├── .dockerignore ├── .editorconfig ├── .github ├── CODEOWNERS ├── CONTRIBUTING.md ├── FUNDING.yml ├── ISSUE_TEMPLATE │ ├── bug.yml │ ├── config.yml │ └── feature.yml ├── SUPPORT.md ├── dependabot.yml ├── geoip-updater.png ├── labels.yml └── workflows │ ├── build.yml │ ├── codeql.yml │ ├── docs.yml │ └── labels.yml ├── .gitignore ├── .golangci.yml ├── CHANGELOG.md ├── Dockerfile ├── LICENSE ├── Makefile ├── README.md ├── cmd ├── main.go ├── sig.go └── sig_windows.go ├── codecov.yml ├── docker-bake.hcl ├── docs ├── _overrides │ └── main.html ├── assets │ ├── favicon.ico │ ├── logo.png │ ├── meta │ │ ├── apple-touch-icon-114x114.png │ │ ├── apple-touch-icon-120x120.png │ │ ├── apple-touch-icon-144x144.png │ │ ├── apple-touch-icon-152x152.png │ │ ├── apple-touch-icon-57x57.png │ │ ├── apple-touch-icon-60x60.png │ │ ├── apple-touch-icon-72x72.png │ │ ├── apple-touch-icon-76x76.png │ │ ├── favicon-128.png │ │ ├── favicon-16x16.png │ │ ├── favicon-196x196.png │ │ ├── favicon-32x32.png │ │ ├── favicon-96x96.png │ │ ├── mstile-144x144.png │ │ ├── mstile-150x150.png │ │ ├── mstile-310x150.png │ │ ├── mstile-310x310.png │ │ └── mstile-70x70.png │ └── stylesheets │ │ └── extra.css ├── changelog.md ├── contributing.md ├── donate.md ├── faq.md ├── index.md ├── install │ ├── binary.md │ ├── docker.md │ └── linux-service.md ├── reporting-issue.md └── usage │ ├── cli.md │ ├── examples.md │ └── prerequisites.md ├── go.mod ├── go.sum ├── hack ├── docs.Dockerfile ├── lint.Dockerfile └── vendor.Dockerfile ├── internal ├── app │ └── geoipupd.go ├── config │ └── config.go └── logging │ └── logger.go ├── mkdocs.yml ├── pkg └── maxmind │ ├── client.go │ ├── client_test.go │ ├── download.go │ ├── editionid.go │ ├── suffix.go │ └── utl.go └── vendor ├── github.com ├── STARRY-S │ └── zip │ │ ├── .gitignore │ │ ├── LICENSE │ │ ├── README.md │ │ ├── reader.go │ │ ├── register.go │ │ ├── struct.go │ │ ├── updater.go │ │ └── writer.go ├── alecthomas │ └── kong │ │ ├── .gitignore │ │ ├── .golangci.yml │ │ ├── COPYING │ │ ├── README.md │ │ ├── build.go │ │ ├── callbacks.go │ │ ├── camelcase.go │ │ ├── context.go │ │ ├── defaults.go │ │ ├── doc.go │ │ ├── error.go │ │ ├── global.go │ │ ├── guesswidth.go │ │ ├── guesswidth_unix.go │ │ ├── help.go │ │ ├── hooks.go │ │ ├── interpolate.go │ │ ├── kong.go │ │ ├── kong.png │ │ ├── kong.sketch │ │ ├── levenshtein.go │ │ ├── mapper.go │ │ ├── model.go │ │ ├── negatable.go │ │ ├── options.go │ │ ├── renovate.json5 │ │ ├── resolver.go │ │ ├── scanner.go │ │ ├── tag.go │ │ ├── util.go │ │ └── visit.go ├── andybalholm │ └── brotli │ │ ├── LICENSE │ │ ├── README.md │ │ ├── backward_references.go │ │ ├── backward_references_hq.go │ │ ├── bit_cost.go │ │ ├── bit_reader.go │ │ ├── bitwriter.go │ │ ├── block_splitter.go │ │ ├── block_splitter_command.go │ │ ├── block_splitter_distance.go │ │ ├── block_splitter_literal.go │ │ ├── brotli_bit_stream.go │ │ ├── cluster.go │ │ ├── cluster_command.go │ │ ├── cluster_distance.go │ │ ├── cluster_literal.go │ │ ├── command.go │ │ ├── compress_fragment.go │ │ ├── compress_fragment_two_pass.go │ │ ├── constants.go │ │ ├── context.go │ │ ├── decode.go │ │ ├── dictionary.go │ │ ├── dictionary_hash.go │ │ ├── encode.go │ │ ├── encoder.go │ │ ├── encoder_dict.go │ │ ├── entropy_encode.go │ │ ├── entropy_encode_static.go │ │ ├── fast_log.go │ │ ├── find_match_length.go │ │ ├── h10.go │ │ ├── h5.go │ │ ├── h6.go │ │ ├── hash.go │ │ ├── hash_composite.go │ │ ├── hash_forgetful_chain.go │ │ ├── hash_longest_match_quickly.go │ │ ├── hash_rolling.go │ │ ├── histogram.go │ │ ├── http.go │ │ ├── huffman.go │ │ ├── literal_cost.go │ │ ├── matchfinder │ │ ├── emitter.go │ │ ├── m0.go │ │ ├── m4.go │ │ ├── matchfinder.go │ │ └── textencoder.go │ │ ├── memory.go │ │ ├── metablock.go │ │ ├── metablock_command.go │ │ ├── metablock_distance.go │ │ ├── metablock_literal.go │ │ ├── params.go │ │ ├── platform.go │ │ ├── prefix.go │ │ ├── prefix_dec.go │ │ ├── quality.go │ │ ├── reader.go │ │ ├── ringbuffer.go │ │ ├── state.go │ │ ├── static_dict.go │ │ ├── static_dict_lut.go │ │ ├── symbol_list.go │ │ ├── transform.go │ │ ├── utf8_util.go │ │ ├── util.go │ │ ├── write_bits.go │ │ └── writer.go ├── bodgit │ ├── plumbing │ │ ├── .golangci.yaml │ │ ├── .goreleaser.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── count.go │ │ ├── fill.go │ │ ├── limit.go │ │ ├── multi.go │ │ ├── padded.go │ │ ├── plumbing.go │ │ ├── tee.go │ │ └── zero.go │ ├── sevenzip │ │ ├── .golangci.yaml │ │ ├── .pre-commit-config.yaml │ │ ├── .release-please-manifest.json │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── internal │ │ │ ├── aes7z │ │ │ │ ├── key.go │ │ │ │ └── reader.go │ │ │ ├── bcj2 │ │ │ │ └── reader.go │ │ │ ├── bra │ │ │ │ ├── arm.go │ │ │ │ ├── bcj.go │ │ │ │ ├── bra.go │ │ │ │ ├── minmax_compat.go │ │ │ │ ├── ppc.go │ │ │ │ ├── reader.go │ │ │ │ └── sparc.go │ │ │ ├── brotli │ │ │ │ └── reader.go │ │ │ ├── bzip2 │ │ │ │ └── reader.go │ │ │ ├── deflate │ │ │ │ └── reader.go │ │ │ ├── delta │ │ │ │ └── reader.go │ │ │ ├── lz4 │ │ │ │ └── reader.go │ │ │ ├── lzma │ │ │ │ └── reader.go │ │ │ ├── lzma2 │ │ │ │ └── reader.go │ │ │ ├── pool │ │ │ │ └── pool.go │ │ │ ├── util │ │ │ │ ├── checksum.go │ │ │ │ └── reader.go │ │ │ └── zstd │ │ │ │ └── reader.go │ │ ├── reader.go │ │ ├── register.go │ │ ├── release-please-config.json │ │ ├── struct.go │ │ └── types.go │ └── windows │ │ ├── .golangci.yaml │ │ ├── .goreleaser.yml │ │ ├── LICENSE │ │ ├── README.md │ │ └── filetime.go ├── davecgh │ └── go-spew │ │ ├── LICENSE │ │ └── spew │ │ ├── bypass.go │ │ ├── bypasssafe.go │ │ ├── common.go │ │ ├── config.go │ │ ├── doc.go │ │ ├── dump.go │ │ ├── format.go │ │ └── spew.go ├── docker │ └── go-units │ │ ├── CONTRIBUTING.md │ │ ├── LICENSE │ │ ├── MAINTAINERS │ │ ├── README.md │ │ ├── circle.yml │ │ ├── duration.go │ │ ├── size.go │ │ └── ulimit.go ├── dromara │ └── carbon │ │ └── v2 │ │ ├── .editorconfig │ │ ├── LICENSE │ │ ├── README.cn.md │ │ ├── README.jp.md │ │ ├── README.md │ │ ├── boundary.go │ │ ├── calendar.go │ │ ├── calendar │ │ ├── gregorian.go │ │ ├── julian │ │ │ ├── README.cn.md │ │ │ ├── README.jp.md │ │ │ ├── README.md │ │ │ └── julian.go │ │ ├── lunar │ │ │ ├── README.cn.md │ │ │ ├── README.jp.md │ │ │ ├── README.md │ │ │ └── lunar.go │ │ └── persian │ │ │ ├── README.cn.md │ │ │ ├── README.jp.md │ │ │ ├── README.md │ │ │ └── persian.go │ │ ├── carbon.go │ │ ├── comparer.go │ │ ├── constellation.go │ │ ├── creator.go │ │ ├── database.go │ │ ├── default.go │ │ ├── difference.go │ │ ├── errors.go │ │ ├── extremum.go │ │ ├── getter.go │ │ ├── helper.go │ │ ├── lang │ │ ├── ar.json │ │ ├── bg.json │ │ ├── de.json │ │ ├── dk.json │ │ ├── en.json │ │ ├── es.json │ │ ├── fa.json │ │ ├── fr.json │ │ ├── hi.json │ │ ├── hu.json │ │ ├── id.json │ │ ├── it.json │ │ ├── jp.json │ │ ├── kr.json │ │ ├── ms-MY.json │ │ ├── nl.json │ │ ├── pl.json │ │ ├── pt.json │ │ ├── ro.json │ │ ├── ru.json │ │ ├── se.json │ │ ├── th.json │ │ ├── tr.json │ │ ├── uk.json │ │ ├── vi.json │ │ ├── zh-CN.json │ │ └── zh-TW.json │ │ ├── language.go │ │ ├── outputer.go │ │ ├── parser.go │ │ ├── season.go │ │ ├── setter.go │ │ ├── test.go │ │ └── traveler.go ├── dsnet │ └── compress │ │ ├── .travis.yml │ │ ├── LICENSE.md │ │ ├── README.md │ │ ├── api.go │ │ ├── bzip2 │ │ ├── bwt.go │ │ ├── common.go │ │ ├── fuzz_off.go │ │ ├── fuzz_on.go │ │ ├── internal │ │ │ └── sais │ │ │ │ ├── common.go │ │ │ │ ├── sais_byte.go │ │ │ │ └── sais_int.go │ │ ├── mtf_rle2.go │ │ ├── prefix.go │ │ ├── reader.go │ │ ├── rle1.go │ │ └── writer.go │ │ ├── internal │ │ ├── common.go │ │ ├── debug.go │ │ ├── errors │ │ │ └── errors.go │ │ ├── gofuzz.go │ │ ├── prefix │ │ │ ├── debug.go │ │ │ ├── decoder.go │ │ │ ├── encoder.go │ │ │ ├── prefix.go │ │ │ ├── range.go │ │ │ ├── reader.go │ │ │ ├── wrap.go │ │ │ └── writer.go │ │ └── release.go │ │ ├── zbench.sh │ │ ├── zfuzz.sh │ │ ├── zprof.sh │ │ └── ztest.sh ├── hashicorp │ ├── errwrap │ │ ├── LICENSE │ │ ├── README.md │ │ └── errwrap.go │ ├── go-multierror │ │ ├── LICENSE │ │ ├── Makefile │ │ ├── README.md │ │ ├── append.go │ │ ├── flatten.go │ │ ├── format.go │ │ ├── group.go │ │ ├── multierror.go │ │ ├── prefix.go │ │ └── sort.go │ └── golang-lru │ │ └── v2 │ │ ├── .gitignore │ │ ├── .golangci.yml │ │ ├── 2q.go │ │ ├── LICENSE │ │ ├── README.md │ │ ├── doc.go │ │ ├── internal │ │ └── list.go │ │ ├── lru.go │ │ └── simplelru │ │ ├── LICENSE_list │ │ ├── lru.go │ │ └── lru_interface.go ├── klauspost │ ├── compress │ │ ├── .gitattributes │ │ ├── .gitignore │ │ ├── .goreleaser.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── SECURITY.md │ │ ├── compressible.go │ │ ├── flate │ │ │ ├── deflate.go │ │ │ ├── dict_decoder.go │ │ │ ├── fast_encoder.go │ │ │ ├── huffman_bit_writer.go │ │ │ ├── huffman_code.go │ │ │ ├── huffman_sortByFreq.go │ │ │ ├── huffman_sortByLiteral.go │ │ │ ├── inflate.go │ │ │ ├── inflate_gen.go │ │ │ ├── level1.go │ │ │ ├── level2.go │ │ │ ├── level3.go │ │ │ ├── level4.go │ │ │ ├── level5.go │ │ │ ├── level6.go │ │ │ ├── matchlen_amd64.go │ │ │ ├── matchlen_amd64.s │ │ │ ├── matchlen_generic.go │ │ │ ├── regmask_amd64.go │ │ │ ├── regmask_other.go │ │ │ ├── stateless.go │ │ │ └── token.go │ │ ├── fse │ │ │ ├── README.md │ │ │ ├── bitreader.go │ │ │ ├── bitwriter.go │ │ │ ├── bytereader.go │ │ │ ├── compress.go │ │ │ ├── decompress.go │ │ │ └── fse.go │ │ ├── gen.sh │ │ ├── gzip │ │ │ ├── gunzip.go │ │ │ └── gzip.go │ │ ├── huff0 │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── bitreader.go │ │ │ ├── bitwriter.go │ │ │ ├── compress.go │ │ │ ├── decompress.go │ │ │ ├── decompress_amd64.go │ │ │ ├── decompress_amd64.s │ │ │ ├── decompress_generic.go │ │ │ └── huff0.go │ │ ├── internal │ │ │ ├── cpuinfo │ │ │ │ ├── cpuinfo.go │ │ │ │ ├── cpuinfo_amd64.go │ │ │ │ └── cpuinfo_amd64.s │ │ │ ├── godebug │ │ │ │ └── godebug.go │ │ │ ├── race │ │ │ │ ├── norace.go │ │ │ │ └── race.go │ │ │ └── snapref │ │ │ │ ├── LICENSE │ │ │ │ ├── decode.go │ │ │ │ ├── decode_other.go │ │ │ │ ├── encode.go │ │ │ │ ├── encode_other.go │ │ │ │ └── snappy.go │ │ ├── s2 │ │ │ ├── .gitignore │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── decode.go │ │ │ ├── decode_amd64.s │ │ │ ├── decode_arm64.s │ │ │ ├── decode_asm.go │ │ │ ├── decode_other.go │ │ │ ├── dict.go │ │ │ ├── encode.go │ │ │ ├── encode_all.go │ │ │ ├── encode_amd64.go │ │ │ ├── encode_best.go │ │ │ ├── encode_better.go │ │ │ ├── encode_go.go │ │ │ ├── encodeblock_amd64.go │ │ │ ├── encodeblock_amd64.s │ │ │ ├── index.go │ │ │ ├── lz4convert.go │ │ │ ├── lz4sconvert.go │ │ │ ├── reader.go │ │ │ ├── s2.go │ │ │ └── writer.go │ │ ├── s2sx.mod │ │ ├── s2sx.sum │ │ ├── zip │ │ │ ├── reader.go │ │ │ ├── register.go │ │ │ ├── struct.go │ │ │ └── writer.go │ │ ├── zlib │ │ │ ├── reader.go │ │ │ └── writer.go │ │ └── zstd │ │ │ ├── README.md │ │ │ ├── bitreader.go │ │ │ ├── bitwriter.go │ │ │ ├── blockdec.go │ │ │ ├── blockenc.go │ │ │ ├── blocktype_string.go │ │ │ ├── bytebuf.go │ │ │ ├── bytereader.go │ │ │ ├── decodeheader.go │ │ │ ├── decoder.go │ │ │ ├── decoder_options.go │ │ │ ├── dict.go │ │ │ ├── enc_base.go │ │ │ ├── enc_best.go │ │ │ ├── enc_better.go │ │ │ ├── enc_dfast.go │ │ │ ├── enc_fast.go │ │ │ ├── encoder.go │ │ │ ├── encoder_options.go │ │ │ ├── framedec.go │ │ │ ├── frameenc.go │ │ │ ├── fse_decoder.go │ │ │ ├── fse_decoder_amd64.go │ │ │ ├── fse_decoder_amd64.s │ │ │ ├── fse_decoder_generic.go │ │ │ ├── fse_encoder.go │ │ │ ├── fse_predefined.go │ │ │ ├── hash.go │ │ │ ├── history.go │ │ │ ├── internal │ │ │ └── xxhash │ │ │ │ ├── LICENSE.txt │ │ │ │ ├── README.md │ │ │ │ ├── xxhash.go │ │ │ │ ├── xxhash_amd64.s │ │ │ │ ├── xxhash_arm64.s │ │ │ │ ├── xxhash_asm.go │ │ │ │ ├── xxhash_other.go │ │ │ │ └── xxhash_safe.go │ │ │ ├── matchlen_amd64.go │ │ │ ├── matchlen_amd64.s │ │ │ ├── matchlen_generic.go │ │ │ ├── seqdec.go │ │ │ ├── seqdec_amd64.go │ │ │ ├── seqdec_amd64.s │ │ │ ├── seqdec_generic.go │ │ │ ├── seqenc.go │ │ │ ├── snappy.go │ │ │ ├── zip.go │ │ │ └── zstd.go │ └── pgzip │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── GO_LICENSE │ │ ├── LICENSE │ │ ├── README.md │ │ ├── gunzip.go │ │ └── gzip.go ├── mattn │ ├── go-colorable │ │ ├── LICENSE │ │ ├── README.md │ │ ├── colorable_appengine.go │ │ ├── colorable_others.go │ │ ├── colorable_windows.go │ │ ├── go.test.sh │ │ └── noncolorable.go │ └── go-isatty │ │ ├── LICENSE │ │ ├── README.md │ │ ├── doc.go │ │ ├── go.test.sh │ │ ├── isatty_bsd.go │ │ ├── isatty_others.go │ │ ├── isatty_plan9.go │ │ ├── isatty_solaris.go │ │ ├── isatty_tcgets.go │ │ └── isatty_windows.go ├── mholt │ └── archives │ │ ├── .gitignore │ │ ├── 7z.go │ │ ├── LICENSE │ │ ├── README.md │ │ ├── archives.go │ │ ├── brotli.go │ │ ├── bz2.go │ │ ├── formats.go │ │ ├── fs.go │ │ ├── gz.go │ │ ├── interfaces.go │ │ ├── lz4.go │ │ ├── lzip.go │ │ ├── rar.go │ │ ├── sz.go │ │ ├── tar.go │ │ ├── xz.go │ │ ├── zip.go │ │ ├── zlib.go │ │ └── zstd.go ├── nwaples │ └── rardecode │ │ └── v2 │ │ ├── LICENSE │ │ ├── README.md │ │ ├── archive.go │ │ ├── archive15.go │ │ ├── archive50.go │ │ ├── bit_reader.go │ │ ├── decode20.go │ │ ├── decode20_audio.go │ │ ├── decode20_lz.go │ │ ├── decode29.go │ │ ├── decode29_lz.go │ │ ├── decode29_ppm.go │ │ ├── decode50.go │ │ ├── decode_reader.go │ │ ├── decrypt_reader.go │ │ ├── filters.go │ │ ├── huffman.go │ │ ├── ppm_model.go │ │ ├── reader.go │ │ ├── vm.go │ │ └── volume.go ├── pierrec │ └── lz4 │ │ └── v4 │ │ ├── .gitignore │ │ ├── LICENSE │ │ ├── README.md │ │ ├── compressing_reader.go │ │ ├── internal │ │ ├── lz4block │ │ │ ├── block.go │ │ │ ├── blocks.go │ │ │ ├── decode_amd64.s │ │ │ ├── decode_arm.s │ │ │ ├── decode_arm64.s │ │ │ ├── decode_asm.go │ │ │ └── decode_other.go │ │ ├── lz4errors │ │ │ └── errors.go │ │ ├── lz4stream │ │ │ ├── block.go │ │ │ ├── frame.go │ │ │ └── frame_gen.go │ │ └── xxh32 │ │ │ ├── xxh32zero.go │ │ │ ├── xxh32zero_arm.go │ │ │ ├── xxh32zero_arm.s │ │ │ └── xxh32zero_other.go │ │ ├── lz4.go │ │ ├── options.go │ │ ├── options_gen.go │ │ ├── reader.go │ │ ├── state.go │ │ ├── state_gen.go │ │ └── writer.go ├── pkg │ └── errors │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── Makefile │ │ ├── README.md │ │ ├── appveyor.yml │ │ ├── errors.go │ │ ├── go113.go │ │ └── stack.go ├── pmezard │ └── go-difflib │ │ ├── LICENSE │ │ └── difflib │ │ └── difflib.go ├── robfig │ └── cron │ │ └── v3 │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── chain.go │ │ ├── constantdelay.go │ │ ├── cron.go │ │ ├── doc.go │ │ ├── logger.go │ │ ├── option.go │ │ ├── parser.go │ │ └── spec.go ├── rs │ └── zerolog │ │ ├── .gitignore │ │ ├── CNAME │ │ ├── LICENSE │ │ ├── README.md │ │ ├── _config.yml │ │ ├── array.go │ │ ├── console.go │ │ ├── context.go │ │ ├── ctx.go │ │ ├── encoder.go │ │ ├── encoder_cbor.go │ │ ├── encoder_json.go │ │ ├── event.go │ │ ├── example.jsonl │ │ ├── fields.go │ │ ├── globals.go │ │ ├── go112.go │ │ ├── hook.go │ │ ├── internal │ │ ├── cbor │ │ │ ├── README.md │ │ │ ├── base.go │ │ │ ├── cbor.go │ │ │ ├── decode_stream.go │ │ │ ├── string.go │ │ │ ├── time.go │ │ │ └── types.go │ │ └── json │ │ │ ├── base.go │ │ │ ├── bytes.go │ │ │ ├── string.go │ │ │ ├── time.go │ │ │ └── types.go │ │ ├── log.go │ │ ├── log │ │ └── log.go │ │ ├── not_go112.go │ │ ├── pretty.png │ │ ├── sampler.go │ │ ├── syslog.go │ │ └── writer.go ├── sorairolake │ └── lzip-go │ │ ├── .bumpversion.toml │ │ ├── .gitignore │ │ ├── .goreleaser.yaml │ │ ├── AUTHORS.adoc │ │ ├── CHANGELOG.adoc │ │ ├── CODE_OF_CONDUCT.md │ │ ├── CONTRIBUTING.adoc │ │ ├── LICENSE │ │ ├── README.md │ │ ├── error.go │ │ ├── go.sum.license │ │ ├── justfile │ │ ├── lzip.go │ │ ├── reader.go │ │ └── writer.go ├── stretchr │ └── testify │ │ ├── LICENSE │ │ └── assert │ │ ├── assertion_compare.go │ │ ├── assertion_format.go │ │ ├── assertion_format.go.tmpl │ │ ├── assertion_forward.go │ │ ├── assertion_forward.go.tmpl │ │ ├── assertion_order.go │ │ ├── assertions.go │ │ ├── doc.go │ │ ├── errors.go │ │ ├── forward_assertions.go │ │ ├── http_assertions.go │ │ └── yaml │ │ ├── yaml_custom.go │ │ ├── yaml_default.go │ │ └── yaml_fail.go ├── therootcompany │ └── xz │ │ ├── AUTHORS │ │ ├── LICENSE │ │ ├── README.md │ │ ├── dec_bcj.go │ │ ├── dec_delta.go │ │ ├── dec_lzma2.go │ │ ├── dec_stream.go │ │ ├── dec_util.go │ │ ├── dec_xz.go │ │ ├── doc.go │ │ └── reader.go └── ulikunitz │ └── xz │ ├── .gitignore │ ├── LICENSE │ ├── README.md │ ├── SECURITY.md │ ├── TODO.md │ ├── bits.go │ ├── crc.go │ ├── format.go │ ├── fox-check-none.xz │ ├── fox.xz │ ├── internal │ ├── hash │ │ ├── cyclic_poly.go │ │ ├── doc.go │ │ ├── rabin_karp.go │ │ └── roller.go │ └── xlog │ │ └── xlog.go │ ├── lzma │ ├── bintree.go │ ├── bitops.go │ ├── breader.go │ ├── buffer.go │ ├── bytewriter.go │ ├── decoder.go │ ├── decoderdict.go │ ├── directcodec.go │ ├── distcodec.go │ ├── encoder.go │ ├── encoderdict.go │ ├── fox.lzma │ ├── hashtable.go │ ├── header.go │ ├── header2.go │ ├── lengthcodec.go │ ├── literalcodec.go │ ├── matchalgorithm.go │ ├── operation.go │ ├── prob.go │ ├── properties.go │ ├── rangecodec.go │ ├── reader.go │ ├── reader2.go │ ├── state.go │ ├── treecodecs.go │ ├── writer.go │ └── writer2.go │ ├── lzmafilter.go │ ├── make-docs │ ├── none-check.go │ ├── reader.go │ └── writer.go ├── go4.org ├── AUTHORS ├── LICENSE ├── readerutil │ ├── bufreaderat.go │ ├── countingreader.go │ ├── fakeseeker.go │ ├── multireaderat.go │ ├── readersize.go │ └── readerutil.go └── syncutil │ ├── gate.go │ ├── group.go │ ├── once.go │ ├── sem.go │ └── syncutil.go ├── golang.org └── x │ ├── sys │ ├── LICENSE │ ├── PATENTS │ ├── unix │ │ ├── .gitignore │ │ ├── README.md │ │ ├── affinity_linux.go │ │ ├── aliases.go │ │ ├── asm_aix_ppc64.s │ │ ├── asm_bsd_386.s │ │ ├── asm_bsd_amd64.s │ │ ├── asm_bsd_arm.s │ │ ├── asm_bsd_arm64.s │ │ ├── asm_bsd_ppc64.s │ │ ├── asm_bsd_riscv64.s │ │ ├── asm_linux_386.s │ │ ├── asm_linux_amd64.s │ │ ├── asm_linux_arm.s │ │ ├── asm_linux_arm64.s │ │ ├── asm_linux_loong64.s │ │ ├── asm_linux_mips64x.s │ │ ├── asm_linux_mipsx.s │ │ ├── asm_linux_ppc64x.s │ │ ├── asm_linux_riscv64.s │ │ ├── asm_linux_s390x.s │ │ ├── asm_openbsd_mips64.s │ │ ├── asm_solaris_amd64.s │ │ ├── asm_zos_s390x.s │ │ ├── bluetooth_linux.go │ │ ├── bpxsvc_zos.go │ │ ├── bpxsvc_zos.s │ │ ├── cap_freebsd.go │ │ ├── constants.go │ │ ├── dev_aix_ppc.go │ │ ├── dev_aix_ppc64.go │ │ ├── dev_darwin.go │ │ ├── dev_dragonfly.go │ │ ├── dev_freebsd.go │ │ ├── dev_linux.go │ │ ├── dev_netbsd.go │ │ ├── dev_openbsd.go │ │ ├── dev_zos.go │ │ ├── dirent.go │ │ ├── endian_big.go │ │ ├── endian_little.go │ │ ├── env_unix.go │ │ ├── fcntl.go │ │ ├── fcntl_darwin.go │ │ ├── fcntl_linux_32bit.go │ │ ├── fdset.go │ │ ├── gccgo.go │ │ ├── gccgo_c.c │ │ ├── gccgo_linux_amd64.go │ │ ├── ifreq_linux.go │ │ ├── ioctl_linux.go │ │ ├── ioctl_signed.go │ │ ├── ioctl_unsigned.go │ │ ├── ioctl_zos.go │ │ ├── mkall.sh │ │ ├── mkerrors.sh │ │ ├── mmap_nomremap.go │ │ ├── mremap.go │ │ ├── pagesize_unix.go │ │ ├── pledge_openbsd.go │ │ ├── ptrace_darwin.go │ │ ├── ptrace_ios.go │ │ ├── race.go │ │ ├── race0.go │ │ ├── readdirent_getdents.go │ │ ├── readdirent_getdirentries.go │ │ ├── sockcmsg_dragonfly.go │ │ ├── sockcmsg_linux.go │ │ ├── sockcmsg_unix.go │ │ ├── sockcmsg_unix_other.go │ │ ├── sockcmsg_zos.go │ │ ├── symaddr_zos_s390x.s │ │ ├── syscall.go │ │ ├── syscall_aix.go │ │ ├── syscall_aix_ppc.go │ │ ├── syscall_aix_ppc64.go │ │ ├── syscall_bsd.go │ │ ├── syscall_darwin.go │ │ ├── syscall_darwin_amd64.go │ │ ├── syscall_darwin_arm64.go │ │ ├── syscall_darwin_libSystem.go │ │ ├── syscall_dragonfly.go │ │ ├── syscall_dragonfly_amd64.go │ │ ├── syscall_freebsd.go │ │ ├── syscall_freebsd_386.go │ │ ├── syscall_freebsd_amd64.go │ │ ├── syscall_freebsd_arm.go │ │ ├── syscall_freebsd_arm64.go │ │ ├── syscall_freebsd_riscv64.go │ │ ├── syscall_hurd.go │ │ ├── syscall_hurd_386.go │ │ ├── syscall_illumos.go │ │ ├── syscall_linux.go │ │ ├── syscall_linux_386.go │ │ ├── syscall_linux_alarm.go │ │ ├── syscall_linux_amd64.go │ │ ├── syscall_linux_amd64_gc.go │ │ ├── syscall_linux_arm.go │ │ ├── syscall_linux_arm64.go │ │ ├── syscall_linux_gc.go │ │ ├── syscall_linux_gc_386.go │ │ ├── syscall_linux_gc_arm.go │ │ ├── syscall_linux_gccgo_386.go │ │ ├── syscall_linux_gccgo_arm.go │ │ ├── syscall_linux_loong64.go │ │ ├── syscall_linux_mips64x.go │ │ ├── syscall_linux_mipsx.go │ │ ├── syscall_linux_ppc.go │ │ ├── syscall_linux_ppc64x.go │ │ ├── syscall_linux_riscv64.go │ │ ├── syscall_linux_s390x.go │ │ ├── syscall_linux_sparc64.go │ │ ├── syscall_netbsd.go │ │ ├── syscall_netbsd_386.go │ │ ├── syscall_netbsd_amd64.go │ │ ├── syscall_netbsd_arm.go │ │ ├── syscall_netbsd_arm64.go │ │ ├── syscall_openbsd.go │ │ ├── syscall_openbsd_386.go │ │ ├── syscall_openbsd_amd64.go │ │ ├── syscall_openbsd_arm.go │ │ ├── syscall_openbsd_arm64.go │ │ ├── syscall_openbsd_libc.go │ │ ├── syscall_openbsd_mips64.go │ │ ├── syscall_openbsd_ppc64.go │ │ ├── syscall_openbsd_riscv64.go │ │ ├── syscall_solaris.go │ │ ├── syscall_solaris_amd64.go │ │ ├── syscall_unix.go │ │ ├── syscall_unix_gc.go │ │ ├── syscall_unix_gc_ppc64x.go │ │ ├── syscall_zos_s390x.go │ │ ├── sysvshm_linux.go │ │ ├── sysvshm_unix.go │ │ ├── sysvshm_unix_other.go │ │ ├── timestruct.go │ │ ├── unveil_openbsd.go │ │ ├── vgetrandom_linux.go │ │ ├── vgetrandom_unsupported.go │ │ ├── xattr_bsd.go │ │ ├── zerrors_aix_ppc.go │ │ ├── zerrors_aix_ppc64.go │ │ ├── zerrors_darwin_amd64.go │ │ ├── zerrors_darwin_arm64.go │ │ ├── zerrors_dragonfly_amd64.go │ │ ├── zerrors_freebsd_386.go │ │ ├── zerrors_freebsd_amd64.go │ │ ├── zerrors_freebsd_arm.go │ │ ├── zerrors_freebsd_arm64.go │ │ ├── zerrors_freebsd_riscv64.go │ │ ├── zerrors_linux.go │ │ ├── zerrors_linux_386.go │ │ ├── zerrors_linux_amd64.go │ │ ├── zerrors_linux_arm.go │ │ ├── zerrors_linux_arm64.go │ │ ├── zerrors_linux_loong64.go │ │ ├── zerrors_linux_mips.go │ │ ├── zerrors_linux_mips64.go │ │ ├── zerrors_linux_mips64le.go │ │ ├── zerrors_linux_mipsle.go │ │ ├── zerrors_linux_ppc.go │ │ ├── zerrors_linux_ppc64.go │ │ ├── zerrors_linux_ppc64le.go │ │ ├── zerrors_linux_riscv64.go │ │ ├── zerrors_linux_s390x.go │ │ ├── zerrors_linux_sparc64.go │ │ ├── zerrors_netbsd_386.go │ │ ├── zerrors_netbsd_amd64.go │ │ ├── zerrors_netbsd_arm.go │ │ ├── zerrors_netbsd_arm64.go │ │ ├── zerrors_openbsd_386.go │ │ ├── zerrors_openbsd_amd64.go │ │ ├── zerrors_openbsd_arm.go │ │ ├── zerrors_openbsd_arm64.go │ │ ├── zerrors_openbsd_mips64.go │ │ ├── zerrors_openbsd_ppc64.go │ │ ├── zerrors_openbsd_riscv64.go │ │ ├── zerrors_solaris_amd64.go │ │ ├── zerrors_zos_s390x.go │ │ ├── zptrace_armnn_linux.go │ │ ├── zptrace_linux_arm64.go │ │ ├── zptrace_mipsnn_linux.go │ │ ├── zptrace_mipsnnle_linux.go │ │ ├── zptrace_x86_linux.go │ │ ├── zsymaddr_zos_s390x.s │ │ ├── zsyscall_aix_ppc.go │ │ ├── zsyscall_aix_ppc64.go │ │ ├── zsyscall_aix_ppc64_gc.go │ │ ├── zsyscall_aix_ppc64_gccgo.go │ │ ├── zsyscall_darwin_amd64.go │ │ ├── zsyscall_darwin_amd64.s │ │ ├── zsyscall_darwin_arm64.go │ │ ├── zsyscall_darwin_arm64.s │ │ ├── zsyscall_dragonfly_amd64.go │ │ ├── zsyscall_freebsd_386.go │ │ ├── zsyscall_freebsd_amd64.go │ │ ├── zsyscall_freebsd_arm.go │ │ ├── zsyscall_freebsd_arm64.go │ │ ├── zsyscall_freebsd_riscv64.go │ │ ├── zsyscall_illumos_amd64.go │ │ ├── zsyscall_linux.go │ │ ├── zsyscall_linux_386.go │ │ ├── zsyscall_linux_amd64.go │ │ ├── zsyscall_linux_arm.go │ │ ├── zsyscall_linux_arm64.go │ │ ├── zsyscall_linux_loong64.go │ │ ├── zsyscall_linux_mips.go │ │ ├── zsyscall_linux_mips64.go │ │ ├── zsyscall_linux_mips64le.go │ │ ├── zsyscall_linux_mipsle.go │ │ ├── zsyscall_linux_ppc.go │ │ ├── zsyscall_linux_ppc64.go │ │ ├── zsyscall_linux_ppc64le.go │ │ ├── zsyscall_linux_riscv64.go │ │ ├── zsyscall_linux_s390x.go │ │ ├── zsyscall_linux_sparc64.go │ │ ├── zsyscall_netbsd_386.go │ │ ├── zsyscall_netbsd_amd64.go │ │ ├── zsyscall_netbsd_arm.go │ │ ├── zsyscall_netbsd_arm64.go │ │ ├── zsyscall_openbsd_386.go │ │ ├── zsyscall_openbsd_386.s │ │ ├── zsyscall_openbsd_amd64.go │ │ ├── zsyscall_openbsd_amd64.s │ │ ├── zsyscall_openbsd_arm.go │ │ ├── zsyscall_openbsd_arm.s │ │ ├── zsyscall_openbsd_arm64.go │ │ ├── zsyscall_openbsd_arm64.s │ │ ├── zsyscall_openbsd_mips64.go │ │ ├── zsyscall_openbsd_mips64.s │ │ ├── zsyscall_openbsd_ppc64.go │ │ ├── zsyscall_openbsd_ppc64.s │ │ ├── zsyscall_openbsd_riscv64.go │ │ ├── zsyscall_openbsd_riscv64.s │ │ ├── zsyscall_solaris_amd64.go │ │ ├── zsyscall_zos_s390x.go │ │ ├── zsysctl_openbsd_386.go │ │ ├── zsysctl_openbsd_amd64.go │ │ ├── zsysctl_openbsd_arm.go │ │ ├── zsysctl_openbsd_arm64.go │ │ ├── zsysctl_openbsd_mips64.go │ │ ├── zsysctl_openbsd_ppc64.go │ │ ├── zsysctl_openbsd_riscv64.go │ │ ├── zsysnum_darwin_amd64.go │ │ ├── zsysnum_darwin_arm64.go │ │ ├── zsysnum_dragonfly_amd64.go │ │ ├── zsysnum_freebsd_386.go │ │ ├── zsysnum_freebsd_amd64.go │ │ ├── zsysnum_freebsd_arm.go │ │ ├── zsysnum_freebsd_arm64.go │ │ ├── zsysnum_freebsd_riscv64.go │ │ ├── zsysnum_linux_386.go │ │ ├── zsysnum_linux_amd64.go │ │ ├── zsysnum_linux_arm.go │ │ ├── zsysnum_linux_arm64.go │ │ ├── zsysnum_linux_loong64.go │ │ ├── zsysnum_linux_mips.go │ │ ├── zsysnum_linux_mips64.go │ │ ├── zsysnum_linux_mips64le.go │ │ ├── zsysnum_linux_mipsle.go │ │ ├── zsysnum_linux_ppc.go │ │ ├── zsysnum_linux_ppc64.go │ │ ├── zsysnum_linux_ppc64le.go │ │ ├── zsysnum_linux_riscv64.go │ │ ├── zsysnum_linux_s390x.go │ │ ├── zsysnum_linux_sparc64.go │ │ ├── zsysnum_netbsd_386.go │ │ ├── zsysnum_netbsd_amd64.go │ │ ├── zsysnum_netbsd_arm.go │ │ ├── zsysnum_netbsd_arm64.go │ │ ├── zsysnum_openbsd_386.go │ │ ├── zsysnum_openbsd_amd64.go │ │ ├── zsysnum_openbsd_arm.go │ │ ├── zsysnum_openbsd_arm64.go │ │ ├── zsysnum_openbsd_mips64.go │ │ ├── zsysnum_openbsd_ppc64.go │ │ ├── zsysnum_openbsd_riscv64.go │ │ ├── zsysnum_zos_s390x.go │ │ ├── ztypes_aix_ppc.go │ │ ├── ztypes_aix_ppc64.go │ │ ├── ztypes_darwin_amd64.go │ │ ├── ztypes_darwin_arm64.go │ │ ├── ztypes_dragonfly_amd64.go │ │ ├── ztypes_freebsd_386.go │ │ ├── ztypes_freebsd_amd64.go │ │ ├── ztypes_freebsd_arm.go │ │ ├── ztypes_freebsd_arm64.go │ │ ├── ztypes_freebsd_riscv64.go │ │ ├── ztypes_linux.go │ │ ├── ztypes_linux_386.go │ │ ├── ztypes_linux_amd64.go │ │ ├── ztypes_linux_arm.go │ │ ├── ztypes_linux_arm64.go │ │ ├── ztypes_linux_loong64.go │ │ ├── ztypes_linux_mips.go │ │ ├── ztypes_linux_mips64.go │ │ ├── ztypes_linux_mips64le.go │ │ ├── ztypes_linux_mipsle.go │ │ ├── ztypes_linux_ppc.go │ │ ├── ztypes_linux_ppc64.go │ │ ├── ztypes_linux_ppc64le.go │ │ ├── ztypes_linux_riscv64.go │ │ ├── ztypes_linux_s390x.go │ │ ├── ztypes_linux_sparc64.go │ │ ├── ztypes_netbsd_386.go │ │ ├── ztypes_netbsd_amd64.go │ │ ├── ztypes_netbsd_arm.go │ │ ├── ztypes_netbsd_arm64.go │ │ ├── ztypes_openbsd_386.go │ │ ├── ztypes_openbsd_amd64.go │ │ ├── ztypes_openbsd_arm.go │ │ ├── ztypes_openbsd_arm64.go │ │ ├── ztypes_openbsd_mips64.go │ │ ├── ztypes_openbsd_ppc64.go │ │ ├── ztypes_openbsd_riscv64.go │ │ ├── ztypes_solaris_amd64.go │ │ └── ztypes_zos_s390x.go │ └── windows │ │ ├── aliases.go │ │ ├── dll_windows.go │ │ ├── env_windows.go │ │ ├── eventlog.go │ │ ├── exec_windows.go │ │ ├── memory_windows.go │ │ ├── mkerrors.bash │ │ ├── mkknownfolderids.bash │ │ ├── mksyscall.go │ │ ├── race.go │ │ ├── race0.go │ │ ├── security_windows.go │ │ ├── service.go │ │ ├── setupapi_windows.go │ │ ├── str.go │ │ ├── syscall.go │ │ ├── syscall_windows.go │ │ ├── types_windows.go │ │ ├── types_windows_386.go │ │ ├── types_windows_amd64.go │ │ ├── types_windows_arm.go │ │ ├── types_windows_arm64.go │ │ ├── zerrors_windows.go │ │ ├── zknownfolderids_windows.go │ │ └── zsyscall_windows.go │ └── text │ ├── LICENSE │ ├── PATENTS │ ├── encoding │ ├── encoding.go │ ├── internal │ │ ├── identifier │ │ │ ├── identifier.go │ │ │ └── mib.go │ │ └── internal.go │ └── unicode │ │ ├── override.go │ │ └── unicode.go │ ├── internal │ └── utf8internal │ │ └── utf8internal.go │ ├── runes │ ├── cond.go │ └── runes.go │ └── transform │ └── transform.go ├── gopkg.in └── yaml.v3 │ ├── LICENSE │ ├── NOTICE │ ├── README.md │ ├── apic.go │ ├── decode.go │ ├── emitterc.go │ ├── encode.go │ ├── parserc.go │ ├── readerc.go │ ├── resolve.go │ ├── scannerc.go │ ├── sorter.go │ ├── writerc.go │ ├── yaml.go │ ├── yamlh.go │ └── yamlprivateh.go └── modules.txt /.dockerignore: -------------------------------------------------------------------------------- 1 | /bin 2 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | # This file is for unifying the coding style for different editors and IDEs. 2 | # More information at http://editorconfig.org 3 | 4 | root = true 5 | 6 | [*] 7 | indent_style = space 8 | indent_size = 2 9 | end_of_line = lf 10 | charset = utf-8 11 | trim_trailing_whitespace = true 12 | insert_final_newline = true 13 | 14 | [*.md] 15 | trim_trailing_whitespace = false 16 | 17 | [*.go] 18 | indent_style = tab 19 | -------------------------------------------------------------------------------- /.github/CODEOWNERS: -------------------------------------------------------------------------------- 1 | * @crazy-max 2 | -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: crazy-max 2 | custom: https://www.paypal.me/crazyws 3 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- 1 | # https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository#configuring-the-template-chooser 2 | blank_issues_enabled: true 3 | contact_links: 4 | - name: Questions and Discussions 5 | url: https://github.com/crazy-max/geoip-updater/discussions/new 6 | about: Use Github Discussions to ask questions and/or open discussion topics. 7 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature.yml: -------------------------------------------------------------------------------- 1 | # https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-githubs-form-schema 2 | name: Feature request 3 | description: Missing functionality? Come tell us about it! 4 | labels: 5 | - kind/enhancement 6 | - status/triage 7 | 8 | body: 9 | - type: textarea 10 | id: description 11 | attributes: 12 | label: Description 13 | description: What is the feature you want to see? 14 | validations: 15 | required: true 16 | -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | updates: 3 | - package-ecosystem: "gomod" 4 | open-pull-requests-limit: 10 5 | directory: "/" 6 | schedule: 7 | interval: "daily" 8 | time: "08:00" 9 | timezone: "Europe/Paris" 10 | labels: 11 | - "kind/dependencies" 12 | - "bot" 13 | - package-ecosystem: "github-actions" 14 | open-pull-requests-limit: 10 15 | directory: "/" 16 | schedule: 17 | interval: "daily" 18 | time: "08:00" 19 | timezone: "Europe/Paris" 20 | labels: 21 | - "kind/dependencies" 22 | - "bot" 23 | -------------------------------------------------------------------------------- /.github/geoip-updater.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/.github/geoip-updater.png -------------------------------------------------------------------------------- /.github/workflows/labels.yml: -------------------------------------------------------------------------------- 1 | name: labels 2 | 3 | concurrency: 4 | group: ${{ github.workflow }}-${{ github.ref }} 5 | cancel-in-progress: true 6 | 7 | # https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions 8 | permissions: 9 | contents: read 10 | 11 | on: 12 | push: 13 | branches: 14 | - 'master' 15 | paths: 16 | - '.github/labels.yml' 17 | - '.github/workflows/labels.yml' 18 | pull_request: 19 | paths: 20 | - '.github/labels.yml' 21 | - '.github/workflows/labels.yml' 22 | 23 | jobs: 24 | labeler: 25 | runs-on: ubuntu-latest 26 | permissions: 27 | # same as global permissions 28 | contents: read 29 | # required to update labels 30 | issues: write 31 | steps: 32 | - 33 | name: Checkout 34 | uses: actions/checkout@v4 35 | - 36 | name: Run Labeler 37 | uses: crazy-max/ghaction-github-labeler@v5 38 | with: 39 | dry-run: ${{ github.event_name == 'pull_request' }} 40 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /bin 2 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020-2024 CrazyMax 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | .PHONY: all 2 | all: 3 | 4 | .PHONY: vendor 5 | vendor: 6 | $(eval $@_TMP_OUT := $(shell mktemp -d -t geoip-updater-output.XXXXXXXXXX)) 7 | docker buildx bake --set "*.output=type=local,dest=$($@_TMP_OUT)" vendor 8 | rm -rf ./vendor 9 | cp -R "$($@_TMP_OUT)"/* ./ 10 | rm -rf "$($@_TMP_OUT)"/* 11 | -------------------------------------------------------------------------------- /cmd/sig.go: -------------------------------------------------------------------------------- 1 | //go:build !windows 2 | // +build !windows 3 | 4 | package main 5 | 6 | import ( 7 | "golang.org/x/sys/unix" 8 | ) 9 | 10 | const ( 11 | SIGTERM = unix.SIGTERM 12 | ) 13 | -------------------------------------------------------------------------------- /cmd/sig_windows.go: -------------------------------------------------------------------------------- 1 | //go:build windows 2 | // +build windows 3 | 4 | package main 5 | 6 | import ( 7 | "golang.org/x/sys/windows" 8 | ) 9 | 10 | const ( 11 | SIGTERM = windows.SIGTERM 12 | ) 13 | -------------------------------------------------------------------------------- /codecov.yml: -------------------------------------------------------------------------------- 1 | comment: false 2 | 3 | coverage: 4 | status: 5 | patch: false 6 | 7 | github_checks: 8 | annotations: false 9 | -------------------------------------------------------------------------------- /docs/assets/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/docs/assets/favicon.ico -------------------------------------------------------------------------------- /docs/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/docs/assets/logo.png -------------------------------------------------------------------------------- /docs/assets/meta/apple-touch-icon-114x114.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/docs/assets/meta/apple-touch-icon-114x114.png -------------------------------------------------------------------------------- /docs/assets/meta/apple-touch-icon-120x120.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/docs/assets/meta/apple-touch-icon-120x120.png -------------------------------------------------------------------------------- /docs/assets/meta/apple-touch-icon-144x144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/docs/assets/meta/apple-touch-icon-144x144.png -------------------------------------------------------------------------------- /docs/assets/meta/apple-touch-icon-152x152.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/docs/assets/meta/apple-touch-icon-152x152.png -------------------------------------------------------------------------------- /docs/assets/meta/apple-touch-icon-57x57.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/docs/assets/meta/apple-touch-icon-57x57.png -------------------------------------------------------------------------------- /docs/assets/meta/apple-touch-icon-60x60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/docs/assets/meta/apple-touch-icon-60x60.png -------------------------------------------------------------------------------- /docs/assets/meta/apple-touch-icon-72x72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/docs/assets/meta/apple-touch-icon-72x72.png -------------------------------------------------------------------------------- /docs/assets/meta/apple-touch-icon-76x76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/docs/assets/meta/apple-touch-icon-76x76.png -------------------------------------------------------------------------------- /docs/assets/meta/favicon-128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/docs/assets/meta/favicon-128.png -------------------------------------------------------------------------------- /docs/assets/meta/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/docs/assets/meta/favicon-16x16.png -------------------------------------------------------------------------------- /docs/assets/meta/favicon-196x196.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/docs/assets/meta/favicon-196x196.png -------------------------------------------------------------------------------- /docs/assets/meta/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/docs/assets/meta/favicon-32x32.png -------------------------------------------------------------------------------- /docs/assets/meta/favicon-96x96.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/docs/assets/meta/favicon-96x96.png -------------------------------------------------------------------------------- /docs/assets/meta/mstile-144x144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/docs/assets/meta/mstile-144x144.png -------------------------------------------------------------------------------- /docs/assets/meta/mstile-150x150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/docs/assets/meta/mstile-150x150.png -------------------------------------------------------------------------------- /docs/assets/meta/mstile-310x150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/docs/assets/meta/mstile-310x150.png -------------------------------------------------------------------------------- /docs/assets/meta/mstile-310x310.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/docs/assets/meta/mstile-310x310.png -------------------------------------------------------------------------------- /docs/assets/meta/mstile-70x70.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/docs/assets/meta/mstile-70x70.png -------------------------------------------------------------------------------- /docs/assets/stylesheets/extra.css: -------------------------------------------------------------------------------- 1 | .md-header-nav__title { 2 | font-size: .85rem; 3 | } 4 | 5 | .md-typeset__table code { 6 | word-break: normal; 7 | } 8 | -------------------------------------------------------------------------------- /docs/changelog.md: -------------------------------------------------------------------------------- 1 | {!../CHANGELOG.md!} 2 | -------------------------------------------------------------------------------- /docs/donate.md: -------------------------------------------------------------------------------- 1 | **geoip-updater** :globe_with_meridians: is free and open source and always will be. 2 | 3 | All kinds of contributions are welcome! The most basic way to show your support is to 4 | [star the project]({{ config.repo_url }}), or to raise issues. 5 | 6 | You can also support this project by [**becoming a sponsor on GitHub**](https://github.com/sponsors/crazy-max) or 7 | by making a [Paypal donation](https://www.paypal.me/crazyws) to ensure this journey continues indefinitely! 8 | -------------------------------------------------------------------------------- /docs/faq.md: -------------------------------------------------------------------------------- 1 | # FAQ 2 | 3 | ## Timezone 4 | 5 | By default, all interpretations and scheduling are done with your local timezone 6 | (`TZ` environment variable). 7 | 8 | Cron schedule may also override the timezone to be interpreted in by providing 9 | an additional space-separated field at the beginning of the cron spec, of the 10 | form `CRON_TZ=`: 11 | 12 | ```shell 13 | geoip-updater --schedule "CRON_TZ=Asia/Tokyo */30 * * * *" 14 | ``` 15 | 16 | ## Supported edition IDs 17 | 18 | Here is the list of supported [edition IDs](usage/cli.md#options) by geoip-updater: 19 | 20 | * `GeoIP2-City` 21 | * `GeoIP2-City-CSV` 22 | * `GeoIP2-Country` 23 | * `GeoIP2-Country-CSV` 24 | * `GeoLite2-ASN` 25 | * `GeoLite2-ASN-CSV` 26 | * `GeoLite2-City` 27 | * `GeoLite2-City-CSV` 28 | * `GeoLite2-Country` 29 | * `GeoLite2-Country-CSV` 30 | -------------------------------------------------------------------------------- /docs/usage/examples.md: -------------------------------------------------------------------------------- 1 | # Examples 2 | 3 | In this section we quickly go over basic ways to run geoip-updater. 4 | 5 | ## Single database 6 | 7 | Download `GeoLite2-City` database with licence key `0123456789ABCD`: 8 | 9 | ```shell 10 | geoip_updater \ 11 | --edition-ids GeoLite2-City \ 12 | --license-key 0123456789ABCD 13 | ``` 14 | 15 | ## Multi databases 16 | 17 | Download `GeoLite2-City` and `GeoLite2-Country` databases with licence key `0123456789ABCD` to 18 | `/usr/local/share/geoip` with log level to `debug` on a time-based schedule (`every week`) 19 | 20 | ```shell 21 | geoip_updater \ 22 | --edition-ids GeoLite2-City,GeoLite2-Country \ 23 | --license-key 0123456789ABCD \ 24 | --download-path /usr/local/share/geoip \ 25 | --schedule "0 0 * * 0" \ 26 | --log-level debug 27 | ``` 28 | -------------------------------------------------------------------------------- /docs/usage/prerequisites.md: -------------------------------------------------------------------------------- 1 | # Prerequisites 2 | 3 | ## License key 4 | 5 | A [MaxMind's license key is required](https://blog.maxmind.com/2019/12/18/significant-changes-to-accessing-and-using-geolite2-databases/) 6 | in order to download GeoLite2 databases. You can obtain a license key by [creating an account](https://www.maxmind.com/en/geolite2/signup) 7 | on the MaxMind website to download GeoLite2 databases for free. 8 | 9 | When you are registered, open [your account page](https://www.maxmind.com/en/account). 10 | 11 | Then go to **Services** and **My License Key** to **Generate a new license key**. 12 | -------------------------------------------------------------------------------- /hack/docs.Dockerfile: -------------------------------------------------------------------------------- 1 | # syntax=docker/dockerfile:1 2 | 3 | ARG MKDOCS_VERSION="8.3.9" 4 | 5 | FROM squidfunk/mkdocs-material:${MKDOCS_VERSION} AS base 6 | RUN apk add --no-cache git git-fast-import openssl \ 7 | && apk add --no-cache --virtual .build gcc musl-dev \ 8 | && pip install --no-cache-dir \ 9 | 'lunr==0.7.0' \ 10 | 'markdown-include==0.8.1' \ 11 | 'mkdocs-awesome-pages-plugin==2.9.3' \ 12 | 'mkdocs-exclude==1.0.2' \ 13 | 'mkdocs-git-revision-date-localized-plugin==1.3.0' \ 14 | 'mkdocs-macros-plugin==1.3.7' \ 15 | && apk del .build gcc musl-dev \ 16 | && rm -rf /tmp/* 17 | 18 | FROM base AS generate 19 | RUN --mount=type=bind,target=. \ 20 | mkdocs build --strict --site-dir /out 21 | 22 | FROM scratch AS release 23 | COPY --from=generate /out / 24 | -------------------------------------------------------------------------------- /hack/lint.Dockerfile: -------------------------------------------------------------------------------- 1 | # syntax=docker/dockerfile:1 2 | 3 | ARG GO_VERSION="1.23" 4 | ARG ALPINE_VERSION="3.21" 5 | ARG GOLANGCI_LINT_VERSION="v1.62" 6 | 7 | FROM golang:${GO_VERSION}-alpine${ALPINE_VERSION} AS base 8 | ENV GOFLAGS="-buildvcs=false" 9 | RUN apk add --no-cache gcc linux-headers musl-dev 10 | WORKDIR /src 11 | 12 | FROM golangci/golangci-lint:${GOLANGCI_LINT_VERSION}-alpine AS golangci-lint 13 | FROM base AS lint 14 | RUN --mount=type=bind,target=. \ 15 | --mount=type=cache,target=/root/.cache \ 16 | --mount=from=golangci-lint,source=/usr/bin/golangci-lint,target=/usr/bin/golangci-lint \ 17 | golangci-lint run ./... 18 | -------------------------------------------------------------------------------- /internal/logging/logger.go: -------------------------------------------------------------------------------- 1 | package logging 2 | 3 | import ( 4 | "io" 5 | "os" 6 | "time" 7 | 8 | "github.com/crazy-max/geoip-updater/internal/config" 9 | "github.com/rs/zerolog" 10 | "github.com/rs/zerolog/log" 11 | ) 12 | 13 | // Configure configures logger 14 | func Configure(cli *config.Cli) { 15 | var err error 16 | var w io.Writer 17 | 18 | if !cli.LogJSON { 19 | w = zerolog.ConsoleWriter{ 20 | Out: os.Stdout, 21 | TimeFormat: time.RFC1123, 22 | } 23 | } else { 24 | w = os.Stdout 25 | } 26 | 27 | ctx := zerolog.New(w).With().Timestamp() 28 | if cli.LogCaller { 29 | ctx = ctx.Caller() 30 | } 31 | 32 | log.Logger = ctx.Logger() 33 | 34 | logLevel, err := zerolog.ParseLevel(cli.LogLevel) 35 | if err != nil { 36 | log.Fatal().Err(err).Msgf("Unknown log level") 37 | } else { 38 | zerolog.SetGlobalLevel(logLevel) 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /pkg/maxmind/client_test.go: -------------------------------------------------------------------------------- 1 | package maxmind_test 2 | 3 | import ( 4 | "testing" 5 | 6 | "github.com/crazy-max/geoip-updater/pkg/maxmind" 7 | "github.com/stretchr/testify/assert" 8 | ) 9 | 10 | func TestNew(t *testing.T) { 11 | cases := []struct { 12 | name string 13 | wantData maxmind.Config 14 | wantErr bool 15 | }{ 16 | { 17 | name: "Empty license key", 18 | wantData: maxmind.Config{ 19 | LicenseKey: "", 20 | }, 21 | wantErr: true, 22 | }, 23 | { 24 | name: "Invalid base URL", 25 | wantData: maxmind.Config{ 26 | LicenseKey: "0123456789", 27 | BaseURL: "foo.bar", 28 | }, 29 | wantErr: true, 30 | }, 31 | { 32 | name: "Success", 33 | wantData: maxmind.Config{ 34 | LicenseKey: "0123456789", 35 | }, 36 | }, 37 | } 38 | for _, tt := range cases { 39 | t.Run(tt.name, func(t *testing.T) { 40 | _, err := maxmind.New(tt.wantData) 41 | assert.Equal(t, tt.wantErr, err != nil) 42 | }) 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /pkg/maxmind/suffix.go: -------------------------------------------------------------------------------- 1 | package maxmind 2 | 3 | // Suffix represents the suffix of a database 4 | type Suffix string 5 | 6 | // Suffix enum 7 | const ( 8 | SfxTarGz = Suffix("tar.gz") 9 | SfxZip = Suffix("zip") 10 | ) 11 | 12 | // String returns the string representation of a suffix 13 | func (sfx Suffix) String() string { 14 | return string(sfx) 15 | } 16 | -------------------------------------------------------------------------------- /vendor/github.com/STARRY-S/zip/.gitignore: -------------------------------------------------------------------------------- 1 | # Generated files 2 | *.out 3 | *.converted 4 | *.txt 5 | !NOTICE.txt 6 | tmp* 7 | 8 | # Test archive files 9 | /*.zip 10 | !testdata/*.zip 11 | 12 | # VSCode config 13 | /.vscode/ 14 | 15 | # macOS trash 16 | .DS_Store 17 | ._.DS_Store 18 | -------------------------------------------------------------------------------- /vendor/github.com/alecthomas/kong/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/vendor/github.com/alecthomas/kong/.gitignore -------------------------------------------------------------------------------- /vendor/github.com/alecthomas/kong/COPYING: -------------------------------------------------------------------------------- 1 | Copyright (C) 2018 Alec Thomas 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy of 4 | this software and associated documentation files (the "Software"), to deal in 5 | the Software without restriction, including without limitation the rights to 6 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 7 | of the Software, and to permit persons to whom the Software is furnished to do 8 | so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all 11 | copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 19 | SOFTWARE. 20 | -------------------------------------------------------------------------------- /vendor/github.com/alecthomas/kong/defaults.go: -------------------------------------------------------------------------------- 1 | package kong 2 | 3 | // ApplyDefaults if they are not already set. 4 | func ApplyDefaults(target interface{}, options ...Option) error { 5 | app, err := New(target, options...) 6 | if err != nil { 7 | return err 8 | } 9 | ctx, err := Trace(app, nil) 10 | if err != nil { 11 | return err 12 | } 13 | err = ctx.Resolve() 14 | if err != nil { 15 | return err 16 | } 17 | if err = ctx.ApplyDefaults(); err != nil { 18 | return err 19 | } 20 | return ctx.Validate() 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/alecthomas/kong/doc.go: -------------------------------------------------------------------------------- 1 | // Package kong aims to support arbitrarily complex command-line structures with as little developer effort as possible. 2 | // 3 | // Here's an example: 4 | // 5 | // shell rm [-f] [-r] ... 6 | // shell ls [ ...] 7 | // 8 | // This can be represented by the following command-line structure: 9 | // 10 | // package main 11 | // 12 | // import "github.com/alecthomas/kong" 13 | // 14 | // var CLI struct { 15 | // Rm struct { 16 | // Force bool `short:"f" help:"Force removal."` 17 | // Recursive bool `short:"r" help:"Recursively remove files."` 18 | // 19 | // Paths []string `arg help:"Paths to remove." type:"path"` 20 | // } `cmd help:"Remove files."` 21 | // 22 | // Ls struct { 23 | // Paths []string `arg optional help:"Paths to list." type:"path"` 24 | // } `cmd help:"List paths."` 25 | // } 26 | // 27 | // func main() { 28 | // kong.Parse(&CLI) 29 | // } 30 | // 31 | // See https://github.com/alecthomas/kong for details. 32 | package kong 33 | -------------------------------------------------------------------------------- /vendor/github.com/alecthomas/kong/error.go: -------------------------------------------------------------------------------- 1 | package kong 2 | 3 | // ParseError is the error type returned by Kong.Parse(). 4 | // 5 | // It contains the parse Context that triggered the error. 6 | type ParseError struct { 7 | error 8 | Context *Context 9 | } 10 | 11 | // Unwrap returns the original cause of the error. 12 | func (p *ParseError) Unwrap() error { return p.error } 13 | -------------------------------------------------------------------------------- /vendor/github.com/alecthomas/kong/global.go: -------------------------------------------------------------------------------- 1 | package kong 2 | 3 | import ( 4 | "os" 5 | ) 6 | 7 | // Parse constructs a new parser and parses the default command-line. 8 | func Parse(cli interface{}, options ...Option) *Context { 9 | parser, err := New(cli, options...) 10 | if err != nil { 11 | panic(err) 12 | } 13 | ctx, err := parser.Parse(os.Args[1:]) 14 | parser.FatalIfErrorf(err) 15 | return ctx 16 | } 17 | -------------------------------------------------------------------------------- /vendor/github.com/alecthomas/kong/guesswidth.go: -------------------------------------------------------------------------------- 1 | //go:build appengine || (!linux && !freebsd && !darwin && !dragonfly && !netbsd && !openbsd) 2 | // +build appengine !linux,!freebsd,!darwin,!dragonfly,!netbsd,!openbsd 3 | 4 | package kong 5 | 6 | import "io" 7 | 8 | func guessWidth(w io.Writer) int { 9 | return 80 10 | } 11 | -------------------------------------------------------------------------------- /vendor/github.com/alecthomas/kong/guesswidth_unix.go: -------------------------------------------------------------------------------- 1 | //go:build (!appengine && linux) || freebsd || darwin || dragonfly || netbsd || openbsd 2 | // +build !appengine,linux freebsd darwin dragonfly netbsd openbsd 3 | 4 | package kong 5 | 6 | import ( 7 | "io" 8 | "os" 9 | "strconv" 10 | "syscall" 11 | "unsafe" 12 | ) 13 | 14 | func guessWidth(w io.Writer) int { 15 | // check if COLUMNS env is set to comply with 16 | // http://pubs.opengroup.org/onlinepubs/009604499/basedefs/xbd_chap08.html 17 | colsStr := os.Getenv("COLUMNS") 18 | if colsStr != "" { 19 | if cols, err := strconv.Atoi(colsStr); err == nil { 20 | return cols 21 | } 22 | } 23 | 24 | if t, ok := w.(*os.File); ok { 25 | fd := t.Fd() 26 | var dimensions [4]uint16 27 | 28 | if _, _, err := syscall.Syscall6( 29 | syscall.SYS_IOCTL, 30 | uintptr(fd), //nolint: unconvert 31 | uintptr(syscall.TIOCGWINSZ), 32 | uintptr(unsafe.Pointer(&dimensions)), //nolint: gas 33 | 0, 0, 0, 34 | ); err == 0 { 35 | if dimensions[1] == 0 { 36 | return 80 37 | } 38 | return int(dimensions[1]) 39 | } 40 | } 41 | return 80 42 | } 43 | -------------------------------------------------------------------------------- /vendor/github.com/alecthomas/kong/hooks.go: -------------------------------------------------------------------------------- 1 | package kong 2 | 3 | // BeforeResolve is a documentation-only interface describing hooks that run before resolvers are applied. 4 | type BeforeResolve interface { 5 | // This is not the correct signature - see README for details. 6 | BeforeResolve(args ...any) error 7 | } 8 | 9 | // BeforeApply is a documentation-only interface describing hooks that run before values are set. 10 | type BeforeApply interface { 11 | // This is not the correct signature - see README for details. 12 | BeforeApply(args ...any) error 13 | } 14 | 15 | // AfterApply is a documentation-only interface describing hooks that run after values are set. 16 | type AfterApply interface { 17 | // This is not the correct signature - see README for details. 18 | AfterApply(args ...any) error 19 | } 20 | 21 | // AfterRun is a documentation-only interface describing hooks that run after Run() returns. 22 | type AfterRun interface { 23 | // This is not the correct signature - see README for details. 24 | // AfterRun is called after Run() returns. 25 | AfterRun(args ...any) error 26 | } 27 | -------------------------------------------------------------------------------- /vendor/github.com/alecthomas/kong/kong.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/vendor/github.com/alecthomas/kong/kong.png -------------------------------------------------------------------------------- /vendor/github.com/alecthomas/kong/kong.sketch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/vendor/github.com/alecthomas/kong/kong.sketch -------------------------------------------------------------------------------- /vendor/github.com/alecthomas/kong/levenshtein.go: -------------------------------------------------------------------------------- 1 | package kong 2 | 3 | import "unicode/utf8" 4 | 5 | // https://en.wikibooks.org/wiki/Algorithm_Implementation/Strings/Levenshtein_distance#Go 6 | // License: https://creativecommons.org/licenses/by-sa/3.0/ 7 | func levenshtein(a, b string) int { 8 | f := make([]int, utf8.RuneCountInString(b)+1) 9 | 10 | for j := range f { 11 | f[j] = j 12 | } 13 | 14 | for _, ca := range a { 15 | j := 1 16 | fj1 := f[0] // fj1 is the value of f[j - 1] in last iteration 17 | f[0]++ 18 | for _, cb := range b { 19 | mn := min(f[j]+1, f[j-1]+1) // delete & insert 20 | if cb != ca { 21 | mn = min(mn, fj1+1) // change 22 | } else { 23 | mn = min(mn, fj1) // matched 24 | } 25 | 26 | fj1, f[j] = f[j], mn // save f[j] to fj1(j is about to increase), update f[j] to mn 27 | j++ 28 | } 29 | } 30 | 31 | return f[len(f)-1] 32 | } 33 | 34 | func min(a, b int) int { //nolint:predeclared 35 | if a <= b { 36 | return a 37 | } 38 | return b 39 | } 40 | -------------------------------------------------------------------------------- /vendor/github.com/alecthomas/kong/negatable.go: -------------------------------------------------------------------------------- 1 | package kong 2 | 3 | // negatableDefault is a placeholder value for the Negatable tag to indicate 4 | // the negated flag is --no-. This is needed as at the time of 5 | // parsing a tag, the field's flag name is not yet known. 6 | const negatableDefault = "_" 7 | 8 | // negatableFlagName returns the name of the flag for a negatable field, or 9 | // an empty string if the field is not negatable. 10 | func negatableFlagName(name, negation string) string { 11 | switch negation { 12 | case "": 13 | return "" 14 | case negatableDefault: 15 | return "--no-" + name 16 | default: 17 | return "--" + negation 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /vendor/github.com/alecthomas/kong/renovate.json5: -------------------------------------------------------------------------------- 1 | { 2 | $schema: "https://docs.renovatebot.com/renovate-schema.json", 3 | extends: [ 4 | "config:recommended", 5 | ":semanticCommits", 6 | ":semanticCommitTypeAll(chore)", 7 | ":semanticCommitScope(deps)", 8 | "group:allNonMajor", 9 | "schedule:earlyMondays", // Run once a week. 10 | ], 11 | packageRules: [ 12 | { 13 | "matchPackageNames": ["golangci-lint"], 14 | "matchManagers": ["hermit"], 15 | "enabled": false 16 | }, 17 | ] 18 | } 19 | -------------------------------------------------------------------------------- /vendor/github.com/andybalholm/brotli/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /vendor/github.com/andybalholm/brotli/README.md: -------------------------------------------------------------------------------- 1 | This package is a brotli compressor and decompressor implemented in Go. 2 | It was translated from the reference implementation (https://github.com/google/brotli) 3 | with the `c2go` tool at https://github.com/andybalholm/c2go. 4 | 5 | I have been working on new compression algorithms (not translated from C) 6 | in the matchfinder package. 7 | You can use them with the NewWriterV2 function. 8 | Currently they give better results than the old implementation 9 | (at least for compressing my test file, Newton’s *Opticks*) 10 | on levels 2 to 6. 11 | 12 | I am using it in production with https://github.com/andybalholm/redwood. 13 | 14 | API documentation is found at https://pkg.go.dev/github.com/andybalholm/brotli?tab=doc. 15 | -------------------------------------------------------------------------------- /vendor/github.com/andybalholm/brotli/cluster.go: -------------------------------------------------------------------------------- 1 | package brotli 2 | 3 | /* Copyright 2013 Google Inc. All Rights Reserved. 4 | 5 | Distributed under MIT license. 6 | See file LICENSE for detail or copy at https://opensource.org/licenses/MIT 7 | */ 8 | 9 | /* Functions for clustering similar histograms together. */ 10 | 11 | type histogramPair struct { 12 | idx1 uint32 13 | idx2 uint32 14 | cost_combo float64 15 | cost_diff float64 16 | } 17 | 18 | func histogramPairIsLess(p1 *histogramPair, p2 *histogramPair) bool { 19 | if p1.cost_diff != p2.cost_diff { 20 | return p1.cost_diff > p2.cost_diff 21 | } 22 | 23 | return (p1.idx2 - p1.idx1) > (p2.idx2 - p2.idx1) 24 | } 25 | 26 | /* Returns entropy reduction of the context map when we combine two clusters. */ 27 | func clusterCostDiff(size_a uint, size_b uint) float64 { 28 | var size_c uint = size_a + size_b 29 | return float64(size_a)*fastLog2(size_a) + float64(size_b)*fastLog2(size_b) - float64(size_c)*fastLog2(size_c) 30 | } 31 | -------------------------------------------------------------------------------- /vendor/github.com/andybalholm/brotli/encoder_dict.go: -------------------------------------------------------------------------------- 1 | package brotli 2 | 3 | /* Dictionary data (words and transforms) for 1 possible context */ 4 | type encoderDictionary struct { 5 | words *dictionary 6 | cutoffTransformsCount uint32 7 | cutoffTransforms uint64 8 | hash_table []uint16 9 | buckets []uint16 10 | dict_words []dictWord 11 | } 12 | 13 | func initEncoderDictionary(dict *encoderDictionary) { 14 | dict.words = getDictionary() 15 | 16 | dict.hash_table = kStaticDictionaryHash[:] 17 | dict.buckets = kStaticDictionaryBuckets[:] 18 | dict.dict_words = kStaticDictionaryWords[:] 19 | 20 | dict.cutoffTransformsCount = kCutoffTransformsCount 21 | dict.cutoffTransforms = kCutoffTransforms 22 | } 23 | -------------------------------------------------------------------------------- /vendor/github.com/andybalholm/brotli/matchfinder/emitter.go: -------------------------------------------------------------------------------- 1 | package matchfinder 2 | 3 | // An absoluteMatch is like a Match, but it stores indexes into the byte 4 | // stream instead of lengths. 5 | type absoluteMatch struct { 6 | // Start is the index of the first byte. 7 | Start int 8 | 9 | // End is the index of the byte after the last byte 10 | // (so that End - Start = Length). 11 | End int 12 | 13 | // Match is the index of the previous data that matches 14 | // (Start - Match = Distance). 15 | Match int 16 | } 17 | 18 | // A matchEmitter manages the output of matches for a MatchFinder. 19 | type matchEmitter struct { 20 | // Dst is the destination slice that Matches are added to. 21 | Dst []Match 22 | 23 | // NextEmit is the index of the next byte to emit. 24 | NextEmit int 25 | } 26 | 27 | func (e *matchEmitter) emit(m absoluteMatch) { 28 | e.Dst = append(e.Dst, Match{ 29 | Unmatched: m.Start - e.NextEmit, 30 | Length: m.End - m.Start, 31 | Distance: m.Start - m.Match, 32 | }) 33 | e.NextEmit = m.End 34 | } 35 | -------------------------------------------------------------------------------- /vendor/github.com/andybalholm/brotli/symbol_list.go: -------------------------------------------------------------------------------- 1 | package brotli 2 | 3 | /* Copyright 2013 Google Inc. All Rights Reserved. 4 | 5 | Distributed under MIT license. 6 | See file LICENSE for detail or copy at https://opensource.org/licenses/MIT 7 | */ 8 | 9 | /* Utilities for building Huffman decoding tables. */ 10 | 11 | type symbolList struct { 12 | storage []uint16 13 | offset int 14 | } 15 | 16 | func symbolListGet(sl symbolList, i int) uint16 { 17 | return sl.storage[i+sl.offset] 18 | } 19 | 20 | func symbolListPut(sl symbolList, i int, val uint16) { 21 | sl.storage[i+sl.offset] = val 22 | } 23 | -------------------------------------------------------------------------------- /vendor/github.com/andybalholm/brotli/util.go: -------------------------------------------------------------------------------- 1 | package brotli 2 | 3 | func assert(cond bool) { 4 | if !cond { 5 | panic("assertion failure") 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /vendor/github.com/bodgit/plumbing/.golangci.yaml: -------------------------------------------------------------------------------- 1 | --- 2 | linters: 3 | enable-all: true 4 | disable: 5 | - dupword 6 | - exhaustivestruct 7 | - exhaustruct 8 | - nonamedreturns 9 | - varnamelen 10 | - wrapcheck 11 | -------------------------------------------------------------------------------- /vendor/github.com/bodgit/plumbing/.goreleaser.yml: -------------------------------------------------------------------------------- 1 | --- 2 | builds: 3 | - skip: true 4 | release: 5 | prerelease: auto 6 | changelog: 7 | use: github-native 8 | -------------------------------------------------------------------------------- /vendor/github.com/bodgit/plumbing/README.md: -------------------------------------------------------------------------------- 1 | [![Build Status](https://img.shields.io/github/workflow/status/bodgit/plumbing/build)](https://github.com/bodgit/plumbing/actions?query=workflow%3Abuild) 2 | [![Coverage Status](https://coveralls.io/repos/github/bodgit/plumbing/badge.svg?branch=master)](https://coveralls.io/github/bodgit/plumbing?branch=master) 3 | [![Go Report Card](https://goreportcard.com/badge/github.com/bodgit/plumbing)](https://goreportcard.com/report/github.com/bodgit/plumbing) 4 | [![GoDoc](https://godoc.org/github.com/bodgit/plumbing?status.svg)](https://godoc.org/github.com/bodgit/plumbing) 5 | ![Go version](https://img.shields.io/badge/Go-1.19-brightgreen.svg) 6 | ![Go version](https://img.shields.io/badge/Go-1.18-brightgreen.svg) 7 | 8 | plumbing 9 | ======== 10 | 11 | Assorted I/O U-bends, T-pieces, etc. 12 | -------------------------------------------------------------------------------- /vendor/github.com/bodgit/plumbing/count.go: -------------------------------------------------------------------------------- 1 | package plumbing 2 | 3 | import ( 4 | "sync/atomic" 5 | ) 6 | 7 | // WriteCounter is an io.Writer that simply counts the number of bytes written 8 | // to it. 9 | type WriteCounter struct { 10 | count uint64 11 | } 12 | 13 | func (wc *WriteCounter) Write(p []byte) (int, error) { 14 | n := len(p) 15 | atomic.AddUint64(&wc.count, uint64(n)) 16 | 17 | return n, nil 18 | } 19 | 20 | // Count returns the number of bytes written. 21 | func (wc *WriteCounter) Count() uint64 { 22 | return atomic.LoadUint64(&wc.count) 23 | } 24 | -------------------------------------------------------------------------------- /vendor/github.com/bodgit/plumbing/fill.go: -------------------------------------------------------------------------------- 1 | package plumbing 2 | 3 | import "io" 4 | 5 | type fillReader struct { 6 | b byte 7 | } 8 | 9 | func (r *fillReader) Read(p []byte) (int, error) { 10 | for i := range p { 11 | p[i] = r.b 12 | } 13 | 14 | return len(p), nil 15 | } 16 | 17 | // FillReader returns an io.Reader such that Read calls return an unlimited 18 | // stream of b bytes. 19 | func FillReader(b byte) io.Reader { 20 | return &fillReader{b} 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/bodgit/plumbing/limit.go: -------------------------------------------------------------------------------- 1 | package plumbing 2 | 3 | import "io" 4 | 5 | // A LimitedReadCloser reads from R but limits the amount of 6 | // data returned to just N bytes. Each call to Read 7 | // updates N to reflect the new amount remaining. 8 | // Read returns EOF when N <= 0 or when the underlying R returns EOF. 9 | type LimitedReadCloser struct { 10 | R io.ReadCloser 11 | N int64 12 | } 13 | 14 | func (l *LimitedReadCloser) Read(p []byte) (n int, err error) { 15 | if l.N <= 0 { 16 | return 0, io.EOF 17 | } 18 | 19 | if int64(len(p)) > l.N { 20 | p = p[0:l.N] 21 | } 22 | 23 | n, err = l.R.Read(p) 24 | l.N -= int64(n) 25 | 26 | return 27 | } 28 | 29 | // Close closes the LimitedReadCloser, rendering it unusable for I/O. 30 | func (l *LimitedReadCloser) Close() error { 31 | return l.R.Close() 32 | } 33 | 34 | // LimitReadCloser returns an io.ReadCloser that reads from r 35 | // but stops with EOF after n bytes. 36 | // The underlying implementation is a *LimitedReadCloser. 37 | func LimitReadCloser(r io.ReadCloser, n int64) io.ReadCloser { 38 | return &LimitedReadCloser{r, n} 39 | } 40 | -------------------------------------------------------------------------------- /vendor/github.com/bodgit/plumbing/padded.go: -------------------------------------------------------------------------------- 1 | package plumbing 2 | 3 | import ( 4 | "io" 5 | ) 6 | 7 | // PaddedReader returns an io.Reader that reads at most n bytes from r. If 8 | // fewer than n bytes are available from r then any remaining bytes return 9 | // fill instead. 10 | func PaddedReader(r io.Reader, n int64, fill byte) io.Reader { 11 | return io.LimitReader(io.MultiReader(r, FillReader(fill)), n) 12 | } 13 | -------------------------------------------------------------------------------- /vendor/github.com/bodgit/plumbing/plumbing.go: -------------------------------------------------------------------------------- 1 | // Package plumbing is a collection of assorted I/O helpers. 2 | package plumbing 3 | 4 | import "io" 5 | 6 | type nopWriteCloser struct { 7 | io.Writer 8 | } 9 | 10 | func (nopWriteCloser) Close() error { 11 | return nil 12 | } 13 | 14 | // NopWriteCloser returns an io.WriteCloser with a no-op Close method 15 | // wrapping the provided io.Writer w. 16 | func NopWriteCloser(w io.Writer) io.WriteCloser { 17 | return nopWriteCloser{w} 18 | } 19 | -------------------------------------------------------------------------------- /vendor/github.com/bodgit/plumbing/zero.go: -------------------------------------------------------------------------------- 1 | package plumbing 2 | 3 | import "io" 4 | 5 | type devZero struct { 6 | io.Reader 7 | } 8 | 9 | func (w *devZero) Write(p []byte) (int, error) { 10 | return len(p), nil 11 | } 12 | 13 | // DevZero returns an io.ReadWriter that behaves like /dev/zero such that Read 14 | // calls return an unlimited stream of zero bytes and all Write calls succeed 15 | // without doing anything. 16 | func DevZero() io.ReadWriter { 17 | return &devZero{FillReader(0)} 18 | } 19 | -------------------------------------------------------------------------------- /vendor/github.com/bodgit/sevenzip/.pre-commit-config.yaml: -------------------------------------------------------------------------------- 1 | repos: 2 | - repo: https://github.com/pre-commit/pre-commit-hooks 3 | rev: v4.4.0 4 | hooks: 5 | - id: end-of-file-fixer 6 | - id: trailing-whitespace 7 | - repo: https://github.com/commitizen-tools/commitizen 8 | rev: v3.5.3 9 | hooks: 10 | - id: commitizen 11 | - repo: https://github.com/golangci/golangci-lint 12 | rev: v1.61.0 13 | hooks: 14 | - id: golangci-lint 15 | - repo: https://github.com/gitleaks/gitleaks 16 | rev: v8.18.0 17 | hooks: 18 | - id: gitleaks 19 | -------------------------------------------------------------------------------- /vendor/github.com/bodgit/sevenzip/.release-please-manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | ".": "1.6.0" 3 | } 4 | -------------------------------------------------------------------------------- /vendor/github.com/bodgit/sevenzip/internal/bra/arm.go: -------------------------------------------------------------------------------- 1 | package bra 2 | 3 | import ( 4 | "encoding/binary" 5 | "io" 6 | ) 7 | 8 | const armAlignment = 4 9 | 10 | type arm struct { 11 | ip uint32 12 | } 13 | 14 | func (c *arm) Size() int { return armAlignment } 15 | 16 | func (c *arm) Convert(b []byte, encoding bool) int { 17 | if len(b) < c.Size() { 18 | return 0 19 | } 20 | 21 | if c.ip == 0 { 22 | c.ip += armAlignment 23 | } 24 | 25 | var i int 26 | 27 | for i = 0; i < len(b) & ^(armAlignment-1); i += armAlignment { 28 | v := binary.LittleEndian.Uint32(b[i:]) 29 | 30 | c.ip += uint32(armAlignment) 31 | 32 | if b[i+3] == 0xeb { 33 | v <<= 2 34 | 35 | if encoding { 36 | v += c.ip 37 | } else { 38 | v -= c.ip 39 | } 40 | 41 | v >>= 2 42 | v &= 0x00ffffff 43 | v |= 0xeb000000 44 | } 45 | 46 | binary.LittleEndian.PutUint32(b[i:], v) 47 | } 48 | 49 | return i 50 | } 51 | 52 | // NewARMReader returns a new ARM io.ReadCloser. 53 | func NewARMReader(_ []byte, _ uint64, readers []io.ReadCloser) (io.ReadCloser, error) { 54 | return newReader(readers, new(arm)) 55 | } 56 | -------------------------------------------------------------------------------- /vendor/github.com/bodgit/sevenzip/internal/bra/bra.go: -------------------------------------------------------------------------------- 1 | // Package bra implements the branch rewriting filter for binaries. 2 | package bra 3 | 4 | type converter interface { 5 | Size() int 6 | Convert(b []byte, encoding bool) int 7 | } 8 | -------------------------------------------------------------------------------- /vendor/github.com/bodgit/sevenzip/internal/bra/minmax_compat.go: -------------------------------------------------------------------------------- 1 | //go:build !1.21 2 | 3 | package bra 4 | 5 | //nolint:predeclared 6 | func min(x, y int) int { 7 | if x < y { 8 | return x 9 | } 10 | 11 | return y 12 | } 13 | 14 | //nolint:predeclared 15 | func max(x, y int) int { 16 | if x > y { 17 | return x 18 | } 19 | 20 | return y 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/bodgit/sevenzip/internal/bra/ppc.go: -------------------------------------------------------------------------------- 1 | package bra 2 | 3 | import ( 4 | "encoding/binary" 5 | "io" 6 | ) 7 | 8 | const ppcAlignment = 4 9 | 10 | type ppc struct { 11 | ip uint32 12 | } 13 | 14 | func (c *ppc) Size() int { return ppcAlignment } 15 | 16 | func (c *ppc) Convert(b []byte, encoding bool) int { 17 | if len(b) < c.Size() { 18 | return 0 19 | } 20 | 21 | var i int 22 | 23 | for i = 0; i < len(b) & ^(ppcAlignment-1); i += ppcAlignment { 24 | v := binary.BigEndian.Uint32(b[i:]) 25 | 26 | if b[i+0]&0xfc == 0x48 && b[i+3]&3 == 1 { 27 | if encoding { 28 | v += c.ip 29 | } else { 30 | v -= c.ip 31 | } 32 | 33 | v &= 0x03ffffff 34 | v |= 0x48000000 35 | } 36 | 37 | c.ip += uint32(ppcAlignment) 38 | 39 | binary.BigEndian.PutUint32(b[i:], v) 40 | } 41 | 42 | return i 43 | } 44 | 45 | // NewPPCReader returns a new PPC io.ReadCloser. 46 | func NewPPCReader(_ []byte, _ uint64, readers []io.ReadCloser) (io.ReadCloser, error) { 47 | return newReader(readers, new(ppc)) 48 | } 49 | -------------------------------------------------------------------------------- /vendor/github.com/bodgit/sevenzip/internal/bra/sparc.go: -------------------------------------------------------------------------------- 1 | package bra 2 | 3 | import ( 4 | "encoding/binary" 5 | "io" 6 | ) 7 | 8 | const sparcAlignment = 4 9 | 10 | type sparc struct { 11 | ip uint32 12 | } 13 | 14 | func (c *sparc) Size() int { return sparcAlignment } 15 | 16 | func (c *sparc) Convert(b []byte, encoding bool) int { 17 | if len(b) < c.Size() { 18 | return 0 19 | } 20 | 21 | var i int 22 | 23 | for i = 0; i < len(b) & ^(sparcAlignment-1); i += sparcAlignment { 24 | v := binary.BigEndian.Uint32(b[i:]) 25 | 26 | if (b[i+0] == 0x40 && b[i+1]&0xc0 == 0) || (b[i+0] == 0x7f && b[i+1] >= 0xc0) { 27 | v <<= 2 28 | 29 | if encoding { 30 | v += c.ip 31 | } else { 32 | v -= c.ip 33 | } 34 | 35 | v &= 0x01ffffff 36 | v -= uint32(1) << 24 37 | v ^= 0xff000000 38 | v >>= 2 39 | v |= 0x40000000 40 | } 41 | 42 | c.ip += uint32(sparcAlignment) 43 | 44 | binary.BigEndian.PutUint32(b[i:], v) 45 | } 46 | 47 | return i 48 | } 49 | 50 | // NewSPARCReader returns a new SPARC io.ReadCloser. 51 | func NewSPARCReader(_ []byte, _ uint64, readers []io.ReadCloser) (io.ReadCloser, error) { 52 | return newReader(readers, new(sparc)) 53 | } 54 | -------------------------------------------------------------------------------- /vendor/github.com/bodgit/sevenzip/internal/util/checksum.go: -------------------------------------------------------------------------------- 1 | package util 2 | 3 | import "bytes" 4 | 5 | // CRC32Equal compares CRC32 checksums. 6 | func CRC32Equal(b []byte, c uint32) bool { 7 | return bytes.Equal(b, []byte{byte(0xff & (c >> 24)), byte(0xff & (c >> 16)), byte(0xff & (c >> 8)), byte(0xff & c)}) 8 | } 9 | -------------------------------------------------------------------------------- /vendor/github.com/bodgit/sevenzip/release-please-config.json: -------------------------------------------------------------------------------- 1 | { 2 | "packages": { 3 | ".": {} 4 | }, 5 | "release-type": "go" 6 | } 7 | -------------------------------------------------------------------------------- /vendor/github.com/bodgit/windows/.golangci.yaml: -------------------------------------------------------------------------------- 1 | --- 2 | linters: 3 | enable-all: true 4 | disable: 5 | - exhaustivestruct 6 | - exhaustruct 7 | - godox 8 | - goerr113 9 | - gomnd 10 | - ireturn 11 | - nonamedreturns 12 | - varnamelen 13 | - wrapcheck 14 | -------------------------------------------------------------------------------- /vendor/github.com/bodgit/windows/.goreleaser.yml: -------------------------------------------------------------------------------- 1 | --- 2 | builds: 3 | - skip: true 4 | release: 5 | prerelease: auto 6 | changelog: 7 | use: github-native 8 | -------------------------------------------------------------------------------- /vendor/github.com/davecgh/go-spew/LICENSE: -------------------------------------------------------------------------------- 1 | ISC License 2 | 3 | Copyright (c) 2012-2016 Dave Collins 4 | 5 | Permission to use, copy, modify, and/or distribute this software for any 6 | purpose with or without fee is hereby granted, provided that the above 7 | copyright notice and this permission notice appear in all copies. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 15 | OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16 | -------------------------------------------------------------------------------- /vendor/github.com/docker/go-units/README.md: -------------------------------------------------------------------------------- 1 | [![GoDoc](https://godoc.org/github.com/docker/go-units?status.svg)](https://godoc.org/github.com/docker/go-units) 2 | 3 | # Introduction 4 | 5 | go-units is a library to transform human friendly measurements into machine friendly values. 6 | 7 | ## Usage 8 | 9 | See the [docs in godoc](https://godoc.org/github.com/docker/go-units) for examples and documentation. 10 | 11 | ## Copyright and license 12 | 13 | Copyright © 2015 Docker, Inc. 14 | 15 | go-units is licensed under the Apache License, Version 2.0. 16 | See [LICENSE](LICENSE) for the full text of the license. 17 | -------------------------------------------------------------------------------- /vendor/github.com/docker/go-units/circle.yml: -------------------------------------------------------------------------------- 1 | dependencies: 2 | post: 3 | # install golint 4 | - go get golang.org/x/lint/golint 5 | 6 | test: 7 | pre: 8 | # run analysis before tests 9 | - go vet ./... 10 | - test -z "$(golint ./... | tee /dev/stderr)" 11 | - test -z "$(gofmt -s -l . | tee /dev/stderr)" 12 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/.editorconfig: -------------------------------------------------------------------------------- 1 | # http://editorconfig.org 2 | root = true 3 | 4 | [*] 5 | indent_style = tab 6 | charset = utf-8 7 | trim_trailing_whitespace = true 8 | 9 | [*.md] 10 | indent_size = 4 11 | trim_trailing_whitespace = false 12 | 13 | [lang/*.json] 14 | indent_size = 4 15 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 gouguoyin 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/default.go: -------------------------------------------------------------------------------- 1 | package carbon 2 | 3 | var ( 4 | // default layout 5 | // 默认布局模板 6 | defaultLayout = DateTimeLayout 7 | 8 | // default timezone 9 | // 默认时区 10 | defaultTimezone = Local 11 | 12 | // default week start date 13 | // 默认一周开始日期 14 | defaultWeekStartsAt = Sunday 15 | 16 | // default language locale 17 | // 默认语言区域 18 | defaultLocale = "en" 19 | ) 20 | 21 | // Default defines a Default struct. 22 | // 定义 Default 结构体 23 | type Default struct { 24 | Layout string 25 | Timezone string 26 | WeekStartsAt string 27 | Locale string 28 | } 29 | 30 | // SetDefault sets default. 31 | // 设置全局默认值 32 | func SetDefault(d Default) { 33 | if d.Layout != "" { 34 | defaultLayout = d.Layout 35 | } 36 | if d.Timezone != "" { 37 | defaultTimezone = d.Timezone 38 | } 39 | if d.WeekStartsAt != "" { 40 | defaultWeekStartsAt = d.WeekStartsAt 41 | } 42 | if d.Locale != "" { 43 | defaultLocale = d.Locale 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/ar.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Arabic", 3 | "months": "يناير|فبراير|مارس|أبريل|مايو|يونيو|يوليو|أغسطس|سبتمبر|أكتوبر|نوفمبر|ديسمبر", 4 | "short_months": "يناير|فبراير|مارس|أبريل|مايو|يونيو|يوليو|أغسطس|سبتمبر|أكتوبر|نوفمبر|ديسمبر", 5 | "weeks": "الأحد|الإثنين|الثلاثاء|الأربعاء|الخميس|الجمعة|السبت", 6 | "short_weeks": "أحد|إثنين|ثلاثاء|أربعاء|خميس|جمعة|سبت", 7 | "seasons": "الربيع|الصيف|الخريف|الشتاء", 8 | "constellations": "الحمل|الثور|الجوزاء|السرطان|الأسد|العذراء|الميزان|العقرب|القوس|الجدي|الدلو|الحوت", 9 | "year": "1 سنة|%d سنوات", 10 | "month": "1 شهر|%d أشهر", 11 | "week": "1 أسبوع|%d أسابيع", 12 | "day": "1 يوم|%d أيام", 13 | "hour": "1 ساعة|%d ساعات", 14 | "minute": "1 دقيقة|%d دقائق", 15 | "second": "1 ثانية|%d ثواني", 16 | "now": "الآن", 17 | "ago": "%s مضت", 18 | "from_now": "من %s", 19 | "before": "%s قبل", 20 | "after": "%s بعد" 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/bg.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Български", 3 | "months": "Януари|Февруари|Март|Април|Май|Юни|Юли|Август|Септември|Октомври|Ноември|Декември", 4 | "short_months": "Ян|Фев|Март|Апр|Май|Юни|Юли|Авг|Сеп|Окт|Ноем|Дек", 5 | "weeks": "Неделя|Понеделник|Вторник|Сряда|Четвъртък|Петък|Събота", 6 | "short_weeks": "Нд|Пн|Вт|Ср|Чт|Пт|Сб", 7 | "seasons": "Пролет|Лято|Есен|Зима", 8 | "constellations": "Овен|Телец|Близнаци|Рак|Лъв|Дева|Везни|Скорпион|Стрелец|Козирог|Водолей|Риби", 9 | "year": "1 година|%d години", 10 | "month": "1 месец|%d месеца", 11 | "week": "1 седмица|%d седмици", 12 | "day": "1 ден|%d дни", 13 | "hour": "1 час|%d часа", 14 | "minute": "1 минута|%d минути", 15 | "second": "1 секунда|%d секунди", 16 | "now": "в момента", 17 | "ago": "%s преди", 18 | "from_now": "%s от сега", 19 | "before": "%s преди", 20 | "after": "%s след" 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/de.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "German", 3 | "months": "Januar|Februar|März|April|Mai|Juni|Juli|August|September|Oktober|November|Dezember", 4 | "short_months": "Jan|Feb|Mär|Apr|Mai|Jun|Jul|Aug|Sep|Okt|Nov|Dez", 5 | "weeks": "Sonntag|Montag|Dienstag|Mittwoch|Donnerstag|Freitag|Samstag", 6 | "short_weeks": "So|Mo|Di|Mi|Do|Fr|Sa", 7 | "seasons": "Frühling|Sommer|Herbst|Winter", 8 | "constellations": "Widder|Stier|Zwilling|Krebs|Löwe|Jungfrau|Waage|Skorpion|Schütze|Steinbock|Wassermann|Fisch", 9 | "year": "1 Jahr|%d Jahre", 10 | "month": "1 Monat|%d Monate", 11 | "week": "1 Woche|%d Wochen", 12 | "day": "1 Tag|%d Tage", 13 | "hour": "1 Stunde|%d Stunden", 14 | "minute": "1 Minute|%d Minuten", 15 | "second": "1 Sekunde|%d Sekunden", 16 | "now": "gerade eben", 17 | "ago": "vor %s", 18 | "from_now": "%s ab jetzt", 19 | "before": "%s davor", 20 | "after": "%s danach" 21 | } -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/dk.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Dansk", 3 | "months": "januar|februar|marts|april|maj|juni|juli|august|september|oktober|november|december", 4 | "short_months": "jan|feb|mar|apr|maj|jun|jul|aug|sep|okt|nov|dec", 5 | "weeks": "søndag|mandag|tirsdag|onsdag|torsdag|fredag|lørdag", 6 | "short_weeks": "søn|man|tir|ons|tor|fre|lør", 7 | "seasons": "forår|sommer|efterår|vinter", 8 | "constellations": "vædder|tyr|tvilling|krebs|løve|jomfru|vægt|skorpion|skytte|stenbuk|vandmand|fisk", 9 | "year": "1 år|%d år", 10 | "month": "1 måned|%d måneder", 11 | "week": "1 uge|%d uger", 12 | "day": "1 dag|%d dage", 13 | "hour": "1 time|%d timer", 14 | "minute": "1 minut|%d minutter", 15 | "second": "1 sekund|%d sekunder", 16 | "now": "lige nu", 17 | "ago": "%s siden", 18 | "from_now": "om %s", 19 | "before": "%s før", 20 | "after": "%s efter" 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/en.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "English", 3 | "months": "January|February|March|April|May|June|July|August|September|October|November|December", 4 | "short_months": "Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec", 5 | "weeks": "Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday", 6 | "short_weeks": "Sun|Mon|Tue|Wed|Thu|Fri|Sat", 7 | "seasons": "Spring|Summer|Autumn|Winter", 8 | "constellations": "Aries|Taurus|Gemini|Cancer|Leo|Virgo|Libra|Scorpio|Sagittarius|Capricorn|Aquarius|Pisces", 9 | "year": "1 year|%d years", 10 | "month": "1 month|%d months", 11 | "week": "1 week|%d weeks", 12 | "day": "1 day|%d days", 13 | "hour": "1 hour|%d hours", 14 | "minute": "1 minute|%d minutes", 15 | "second": "1 second|%d seconds", 16 | "now": "just now", 17 | "ago": "%s ago", 18 | "from_now": "%s from now", 19 | "before": "%s before", 20 | "after": "%s after" 21 | } -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/es.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Spanish", 3 | "months": "Enero|Febrero|Marzo|Abril|Mayo|Junio|Julio|Agosto|Septiembre|Octubre|Noviembre|Diciembre", 4 | "short_months": "Ene|Feb|Mar|Abr|May|Jun|Jul|Ago|Sep|Oct|Nov|Dic", 5 | "weeks": "Domingo|Lunes|Martes|Miércoles|Jueves|Viernes|Sábado", 6 | "short_weeks": "Dom|Lun|Mar|Mie|Jue|Vie|Sab", 7 | "seasons": "Primavera|Verano|Otoño|Invierno", 8 | "constellations": "Aries|Tauro|Geminis|Cancer|Leo|Virgo|Libra|Escorpio|Sagitario|Capricornio|Acuario|Piscis", 9 | "year": "1 año|%d años", 10 | "month": "1 mes|%d meses", 11 | "week": "1 semana|%d semanas", 12 | "day": "1 día|%d días", 13 | "hour": "1 hora|%d horas", 14 | "minute": "1 minuto|%d minutos", 15 | "second": "1 segundo|%d segundos", 16 | "now": "ahora", 17 | "ago": "hace %s", 18 | "from_now": "%s desde ahora", 19 | "before": "%s antes", 20 | "after": "%s después" 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/fa.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Farsi", 3 | "months": "ژانویه|فوریه|مارس|آوریل|مه|ژوئن|ژوئیه|اوت|سپتامبر|اکتبر|نوامبر|دسامبر", 4 | "short_months": "ژانویه|فوریه|مارس|آوریل|مه|ژوئن|ژوئیه|اوت|سپتامبر|اکتبر|نوامبر|دسامبر", 5 | "weeks": "یکشنبه|دوشنبه|سه‌شنبه|چهارشنبه|پنجشنبه|جمعه|شنبه", 6 | "short_weeks": "یکشنبه|دوشنبه|سه‌شنبه|چهارشنبه|پنجشنبه|جمعه|شنبه", 7 | "seasons": "بهار|تابستان|پاییز|زمستان", 8 | "constellations": "قوچ|گاو نر|دو پیکر|خرچنگ|شیر|خوشه|ترازو|عقرب|کماندار|بز|آبریز|ماهی", 9 | "year": "1 سال|%d سال", 10 | "month": "1 ماه|%d ماه", 11 | "week": "1 هفته|%d هفته", 12 | "day": "1 روز|%d روز", 13 | "hour": "1 ساعت|%d ساعت", 14 | "minute": "1 دقیقه|%d دقیقه", 15 | "second": "1 ثانیه|%d ثانیه", 16 | "now": "همین الان", 17 | "ago": "%s پیش", 18 | "from_now": "در %s", 19 | "before": "%s قبل", 20 | "after": "%s بعد" 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/fr.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "French", 3 | "months": "Janvier|Février|Mars|Avril|Mai|Juin|Juillet|Août|Septembre|Octobre|Novembre|Décembre", 4 | "short_months": "Janv|Févr|Mars|Avril|Mai|Juin|Juil|Août|Sept|Oct|Nov|Déc", 5 | "weeks": "Dimanche|Lundi|Mardi|Mercredi|Jeudi|Vendredi|Samedi", 6 | "short_weeks": "Dim|Lun|Mar|Mer|Jeu|Ven|Sam", 7 | "seasons": "Le Printemps|L’été|L’Automne|L’Hiver", 8 | "constellations": "Bélier|Taureau|Gémeaux|Cancer|Lion|Vierge|Balance|Scorpion|Sagittaire|Capricorne|Verseau|Poissons", 9 | "year": "1 an|%d ans", 10 | "month": "1 mois|%d mois", 11 | "week": "1 semaine|%d semaines", 12 | "day": "1 jour|%d jours", 13 | "hour": "1 heure|%d heures", 14 | "minute": "1 minute|%d minutes", 15 | "second": "1 seconde|%d secondes", 16 | "now": "maintenant", 17 | "ago": "il y a %s", 18 | "from_now": "%s à partir de maintenant", 19 | "before": "avant %s", 20 | "after": "après %s" 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/hi.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Hindi", 3 | "months": "जनवरी|फ़रवरी|मार्च|अप्रैल|मई|जून|जुलाई|अगस्त|सितंबर|अक्टूबर|नवंबर|दिसंबर", 4 | "short_months": "जन|फ़र|मार्च|अप्रैल|मई|जून|जुलाई|अगस्त|सितंबर|अक्टूबर|नवंबर|दिसंबर", 5 | "weeks": "रविवार|सोमवार|मंगलवार|बुधवार|गुरुवार|शुक्रवार|शनिवार", 6 | "short_weeks": "रवि|सोम|मंगल|बुध|गुरु|शुक्र|शनि", 7 | "seasons": "वसंत|ग्रीष्म|पतझड़|शीत", 8 | "constellations": "मेष|वृषभ|मिथुन|कर्क|सिंह|कन्या|तुला|वृश्चिक|धनु|मकर|कुंभ|मीन", 9 | "year": "1 वर्ष|%d वर्ष", 10 | "month": "1 महीना|%d महीने", 11 | "week": "1 सप्ताह|%d सप्ताह", 12 | "day": "1 दिन|%d दिन", 13 | "hour": "1 घंटा|%d घंटे", 14 | "minute": "1 मिनट|%d मिनट", 15 | "second": "1 सेकंड|%d सेकंड", 16 | "now": "अभी", 17 | "ago": "%s पहले", 18 | "from_now": "%s बाद", 19 | "before": "%s पहले", 20 | "after": "%s बाद" 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/hu.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Hungarian", 3 | "months": "január|február|március|április|május|június|július|augusztus|szeptember|október|november|december", 4 | "short_months": "jan.|febr.|márc.|ápr.|máj.|jún.|júl.|aug.|szept.|okt.|nov.|dec.", 5 | "weeks": "Vasárnap|Hétfő|Kedd|Szerda|Csütörtök|Péntek|Szombat", 6 | "short_weeks": "Vas|Hét|Ke|Sze|Csü|Pé|Szo", 7 | "seasons": "Tavasz|Nyár|Ősz|Tél", 8 | "constellations": "Kos|Bika|Ikrek|Rák|Oroszlán|Szűz|Mérleg|Skorpió|Nyilas|Bak|Vízöntő|Halak", 9 | "year": "1 év|%d év", 10 | "month": "1 hónap|%d hónap", 11 | "week": "1 hét|%d hét", 12 | "day": "1 nap|%d nap", 13 | "hour": "1 óra|%d óra", 14 | "minute": "1 perc|%d perc", 15 | "second": "1 másodperc|%d másodperc", 16 | "now": "most", 17 | "ago": "%s", 18 | "from_now": "%s múlva", 19 | "before": "%s korábban", 20 | "after": "%s később" 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/id.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Indonesian", 3 | "months": "Januari|Februari|Maret|April|Mei|Juni|Juli|Agustus|September|Oktober|November|Desember", 4 | "short_months": "Jan|Feb|Mar|Apr|Mei|Jun|Jul|Agt|Sep|Okt|Nov|Des", 5 | "weeks": "Minggu|Senin|Selasa|Rabu|Kamis|Jumaat|Sabtu", 6 | "short_weeks": "Min|Sen|Sel|Rab|Kam|Jum|Sab", 7 | "seasons": "Musim Semi|Musim Panas|Musim Gugur|Musim Salju", 8 | "constellations": "Aries|Taurus|Gemini|Cancer|Leo|Virgo|Libra|Scorpio|Sagitarius|Capricorn|Aquarius|Pisces", 9 | "year": "1 tahun|%d tahun", 10 | "month": "1 bulan|%d bulan", 11 | "week": "1 minggu|%d minggu", 12 | "day": "1 hari|%d hari", 13 | "hour": "1 jam|%d jam", 14 | "minute": "1 menit|%d menit", 15 | "second": "1 detik|%d detik", 16 | "now": "baru saja", 17 | "ago": "%s yang lalu", 18 | "from_now": "%s dari sekarang", 19 | "before": "%s sebelum", 20 | "after": "%s sesudah" 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/it.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Italian", 3 | "months": "Gennaio|Febbraio|Marzo|Aprile|Maggio|Giugno|Luglio|Agosto|Settembre|Ottobre|Novembre|Dicembre", 4 | "short_months": "Gen|Feb|Mar|Apr|Mag|Giu|Lug|Ago|Set|Ott|Nov|Dic", 5 | "weeks": "Domenica|Lunedí|Martedí|Mercoledí|Giovedí|Venerdí|Sabato", 6 | "short_weeks": "Dom|Lun|Mar|Mer|Gio|Ven|Sab", 7 | "seasons": "Primavera|Estate|Autunno|Inverno", 8 | "year": "1 anno|%d anni", 9 | "month": "1 mese|%d mesi", 10 | "week": "1 settimana|%d settimane", 11 | "day": "1 giorno|%d giorni", 12 | "hour": "1 ora|%d ore", 13 | "minute": "1 minuto|%d minuti", 14 | "second": "1 secondo|%d secondi", 15 | "now": "proprio ora", 16 | "ago": "%s fa", 17 | "from_now": "%s da adesso", 18 | "before": "%s prima", 19 | "after": "%s dopo" 20 | } 21 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/jp.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Japanese", 3 | "months": "1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月", 4 | "short_months": "1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月", 5 | "weeks": "日曜日|月曜日|火曜日|水曜日|木曜日|金曜日|土曜日", 6 | "short_weeks": "日|月|火|水|木|金|土", 7 | "seasons": "春|夏|秋|冬", 8 | "constellations": "おひつじ座|おうし座|ふたご座|かに座|しし座|おとめ座|てんびん座|さそり座|いて座|やぎ座|みずがめ座|うお座", 9 | "year": "%d 年", 10 | "month": "%d ヶ月", 11 | "week": "%d 週間", 12 | "day": "%d 日", 13 | "hour": "%d 時間", 14 | "minute": "%d 分", 15 | "second": "%d 秒", 16 | "now": "現在", 17 | "ago": "%s前", 18 | "from_now": "%s後", 19 | "before": "%s前", 20 | "after": "%s後" 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/kr.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Korean", 3 | "months": "일월|이월|삼월|사월|오월|유월|칠월|팔월|구월|시월|십일월|십이월", 4 | "short_months": "1월|2월|3월|4월|5월|6월|7월|8월|9월|10월|11월|12월", 5 | "weeks": "일요일|월요일|화요일|수요일|목요일|금요일|토요일", 6 | "short_weeks": "일요일|월요일|화요일|수요일|목요일|금요일|토요일", 7 | "seasons": "봄|여름|가을|겨울", 8 | "constellations": "양자리|황소자리|쌍둥이자리|게자리|사자자리|처녀자리|천칭자리|전갈자리|사수자리|염소자리|물병자리|물고기자리", 9 | "year": "%d 년", 10 | "month": "%d 개월", 11 | "week": "%d 주", 12 | "day": "%d 일", 13 | "hour": "%d 시간", 14 | "minute": "%d 분", 15 | "second": "%d 초", 16 | "now": "방금", 17 | "ago": "%s앞", 18 | "from_now": "%s후", 19 | "before": "%s전", 20 | "after": "%s후" 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/ms-MY.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Bahasa Malaysia", 3 | "months": "Januari|Februari|Mac|April|Mei|Jun|Julai|Ogos|September|Oktober|November|Disember", 4 | "short_months": "Jan|Feb|Mac|Apr|Mei|Jun|Jul|Ogs|Sep|Okt|Nov|Dis", 5 | "weeks": "Ahad|Isnin|Selasa|Rabu|Khamis|Jumaat|Sabtu", 6 | "short_weeks": "Ahd|Isn|Sel|Rab|Kha|Jum|Sab", 7 | "seasons": "Musim Bunga|Musim Panas|Musim Luruh|Musim Sejuk", 8 | "constellations": "Aries|Taurus|Gemini|Cancer|Leo|Virgo|Libra|Scorpio|Sagittarius|Capricorn|Aquarius|Pisces", 9 | "year": "1 tahun|%d tahun", 10 | "month": "1 bulan|%d bulan", 11 | "week": "1 minggu|%d minggu", 12 | "day": "1 hari|%d hari", 13 | "hour": "1 jam|%d jam", 14 | "minute": "1 minit|%d minit", 15 | "second": "1 saat|%d saat", 16 | "now": "baru tadi", 17 | "ago": "%s lalu", 18 | "from_now": "%s dari sekarang", 19 | "before": "sebelum %s", 20 | "after": "selepas %s" 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/nl.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Dutch", 3 | "months": "januari|februari|maart|april|mei|juni|juli|augustus|september|oktober|november|december", 4 | "short_months": "jan|feb|mrt|apr|mei|jun|jul|aug|sep|okt|nov|dec", 5 | "weeks": "Zondag|Maandag|Dinsdag|Woensdag|Donderdag|Vrijdag|Zaterdag|Zondag", 6 | "short_weeks": "zo|ma|di|wo|do|vr|za", 7 | "seasons": "Lente|Zomer|Herfst|Winter", 8 | "constellations": "Ram|Stier|Tweelingen|Kreeft|Leeuw|Maagd|Weegschaal|Schorpioen|Boogschutter|Steenbok|Waterman|Vissen", 9 | "year": "1 jaar|%d jaren", 10 | "month": "1 maand|%d maanden", 11 | "week": "1 week|%d weken", 12 | "day": "1 dag|%d dagen", 13 | "hour": "1 uur|%d uren", 14 | "minute": "1 minuut|%d minuten", 15 | "second": "1 seconde|%d seconden", 16 | "now": "zojuist", 17 | "ago": "%s geleden", 18 | "from_now": "%s vanaf nu", 19 | "before": "%s voor", 20 | "after": "%s na" 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/pl.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Polish", 3 | "months": "stycznia|lutego|marca|kwietnia|maja|czerwca|lipca|sierpnia|września|października|listopada|grudnia", 4 | "short_months": "sty|lut|mar|kwi|maj|cze|lip|sie|wrz|paź|lis|gru", 5 | "weeks": "niedziela|poniedziałek|wtorek|środa|czwartek|piątek|sobota", 6 | "short_weeks": "ndz|pon|wt|śr|czw|pt|sob", 7 | "seasons": "sprężyna|lato|jesień|zima", 8 | "constellations": "baran|byk|bliźnięta|rak|lew|dziewica|waga|skorpion|strzelec|koziorożec|wodnik|ryby", 9 | "year": "1 rok|2 lata|%d lat", 10 | "month": "1 miesiąc|2 miesiące|%d miesięcy", 11 | "week": "1 tydzień|2 tygodnie|%d tygodni", 12 | "day": "1 dzień|%d dni", 13 | "hour": "1 godzina|2 godziny|%d godzin", 14 | "minute": "1 minuta|2 minuty|%d minut", 15 | "second": "1 sekunda|2 sekundy|%d sekund", 16 | "now": "teraz", 17 | "ago": "%s temu", 18 | "from_now": "%s po", 19 | "before": "%s przed", 20 | "after": "%s po" 21 | } -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/pt.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Portuguese", 3 | "months": "Janeiro|Fevereiro|Março|Abril|Maio|Junho|Julho|Agosto|Setembro|Outubro|Novembro|Dezembro", 4 | "short_months": "Jan|Fev|Mar|Abr|Maio|Jun|Jul|Ago|Set|Out|Nov|Dez", 5 | "weeks": "Domingo|Segunda-feira|Terça-feira|Quarta-feira|Quinta-feira|Sexta-feira|Sábado", 6 | "short_weeks": "Dom|Seg|Ter|Qua|Qui|Sex|Sab", 7 | "seasons": "Primavera|Verão|Outono|Inverno", 8 | "constellations": "Áries|Touro|Gêmeos|Câncer|Leão|Virgem|Libra|Escorpião|Sagitário|Capricórnio|Aquário|Peixes", 9 | "year": "1 ano|%d anos", 10 | "month": "1 mês|%d meses", 11 | "week": "1 semana|%d semanas", 12 | "day": "1 dia|%d dias", 13 | "hour": "1 hora|%d horas", 14 | "minute": "1 minuto|%d minutos", 15 | "second": "1 segundo|%d segundos", 16 | "now": "agora", 17 | "ago": "%s atrás", 18 | "from_now": "%s a partir de agora", 19 | "before": "%s antes", 20 | "after": "%s depois" 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/ro.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Romanian", 3 | "months": "Ianuarie|Februarie|Martie|Aprilie|Mai|Iunie|Iulie|August|Septembrie|Octombrie|Noiembrie|Decembrie", 4 | "short_months": "Ian|Feb|Mar|Apr|Mai|Iun|Iul|Aug|Sep|Oct|Noi|Dec", 5 | "weeks": "Duminică|Luni|Marți|Miercuri|Joi|Vineri|Sîmbătă", 6 | "short_weeks": "Dum|Lun|Mar|Mie|Joi|Vin|Sîm", 7 | "seasons": "Primăvara|Vara|Toamna|Iarna", 8 | "constellations": "Berbec|Taur|Gemeni|Rac|Leu|Fecioară|Balanță|Scorpion|Săgetător|Capricorn|Vărsător|Pești", 9 | "year": "1 an|%d ani", 10 | "month": "1 lună|%d luni", 11 | "week": "1 săptămînă|%d săptămîni", 12 | "day": "1 zi|%d zile", 13 | "hour": "1 oră|%d ore", 14 | "minute": "1 minută|%d minute", 15 | "second": "1 secundă|%d secunde", 16 | "now": "chiar acum", 17 | "ago": "%s în urmă", 18 | "from_now": "%s de acum", 19 | "before": "%s înainte", 20 | "after": "%s după" 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/ru.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Russian", 3 | "months": "Январь|Февраль|Март|Апрель|Май|Июнь|Июль|Август|Сентябрь|Октябрь|Ноябрь|Декабрь", 4 | "short_months": "Янв|Фев|Мар|Апр|Май|Июн|Июл|Авг|Сен|Окт|Ноя|Дек", 5 | "weeks": "Воскресенье|Понедельник|Вторник|Среда|Четверг|Пятница|Суббота", 6 | "short_weeks": "Вс|Пн|Вт|Ср|Чт|Пт|Сб", 7 | "seasons": "Весна|Лето|Осень|Зима", 8 | "constellations": "Овен|Телец|Близнецы|Рак|Лев|Дева|Весы|Скорпион|Стрелец|Козерог|Водолей|Рыбы", 9 | "year": "1 год|2 года|3 года|4 года|%d лет", 10 | "month": "1 месяц|2 месяца|3 месяца|4 месяца|%d месяцев", 11 | "week": "1 неделя|2 недели|3 недели|4 недели|%d недель", 12 | "day": "1 день|2 дня|3 дня|4 дня|%d дней", 13 | "hour": "1 час|2 часа|3 часа|4 часа|%d часов", 14 | "minute": "1 минуту|2 минуты|3 минуты|4 минуты|%d минут", 15 | "second": "1 секунда|2 секунды|3 секунды|4 секунды|%d секунд", 16 | "now": "сейчас", 17 | "ago": "%s назад", 18 | "from_now": "через %s", 19 | "before": "за %s до", 20 | "after": "через %s после" 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/se.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Swedish", 3 | "months": "Januari|Februari|Mars|April|Maj|Juni|Juli|Augusti|September|Oktober|November|December", 4 | "short_months": "Jan|Feb|Mars|April|Maj|Juni|Juli|Aug|Sep|Okt|Nov|Dec", 5 | "weeks": "Söndag|Måndag|Tisdag|Onsdag|Torsdag|Fredag|Lördag", 6 | "short_weeks": "Sön|Mån|Tis|Ons|Tors|Fre|Lör", 7 | "seasons": "Vår|Sommar|Höst|Vinter", 8 | "constellations": "Väduren|Oxen|Tvillingarna|Kräftan|Lejonet|Jungfrun|Vågen|Skorpionen|Skytten|Stenbocken|Vattumannen|Fiskarna", 9 | "year": "1 år|%d år", 10 | "month": "1 månad|%d månader", 11 | "week": "1 vecka|%d veckor", 12 | "day": "1 dag|%d dagar", 13 | "hour": "1 timme|%d timmar", 14 | "minute": "1 minut|%d minuter", 15 | "second": "1 sekund|%d sekunder", 16 | "now": "just nu", 17 | "ago": "%s sedan", 18 | "from_now": "%s fr.o.m. nu", 19 | "before": "%s innan", 20 | "after": "%s efter" 21 | } -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/th.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Thailand", 3 | "months": "มกราคม|กุมภาพันธ์|มีนาคม|เมษายน|พฤษภาคม|มิถุนายน|กรกฎาคม|สิงหาคม|กันยายน|ตุลาคม|พฤศจิกายน|ธันวาคม", 4 | "short_months": "ม.ค.|ก.พ.|มี.ค.|เม.ย.|พ.ค.|มิ.ย.|ก.ค.|ส.ค.|ก.ย.|ต.ค.|พ.ย.|ธ.ค.", 5 | "weeks": "อาทิตย์|จันทร์|อังคาร|พุธ|พฤหัสบดี|ศุกร์|เสาร์", 6 | "short_weeks": "อา.|จ.|อัง.|พ.|พฤ.|ศ.|ส.", 7 | "seasons": "ฤดูใบไม้ผลิ|ฤดูร้อน|ฤดูใบไม้ร่วง|ฤดูหนาว", 8 | "constellations": "เมษ|พฤษภ|เมถุน|กรกฎ|สิงห์|กันย์|ตุลย์|พิจิก|ธนู|มังกร|กุมภ์|มีน", 9 | "year": "1 ปี|%d ปี", 10 | "month": "1 เดือน|%d เดือน", 11 | "week": "1 สัปดาห์|%d สัปดาห์", 12 | "day": "1 วัน|%d วัน", 13 | "hour": "1 ชั่วโมง|%d ชั่วโมง", 14 | "minute": "1 นาที|%d นาที", 15 | "second": "1 วินาที|%d วินาที", 16 | "now": "ไม่กี่วินาทีที่แล้ว", 17 | "ago": "%s ที่แล้ว", 18 | "from_now": "อีก %s", 19 | "before": "%s ก่อน", 20 | "after": "%s หลังจากนี้" 21 | } -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/tr.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Turkish", 3 | "months": "Ocak|Şubat|Mart|Nisan|Mayıs|Haziran|Temmuz|Ağustos|Eylül|Ekim|Kasım|Aralık", 4 | "short_months": "Oca|Şub|Mar|Nis|May|Haz|Tem|Ağu|Eyl|Eki|Kas|Ara", 5 | "weeks": "Pazar|Pazartesi|Salı|Çarşamba|Perşembe|Cuma|Cumartesi", 6 | "short_weeks": "Paz|Pts|Sal|Çrş|Per|Cum|Cts", 7 | "seasons": "İlkbahar|Yaz|Sonbahar|Kış", 8 | "constellations": "Koç|Boğa|İkizler|Yengeç|Aslan|Başak|Terazi|Akrep|Yay|Oğlak|Kova|Balık", 9 | "year": "bir yıl|%d yıl", 10 | "month": "bir ay|%d ay", 11 | "week": "bir hafta|%d hafta", 12 | "day": "bir gün|%d gün", 13 | "hour": "bir saat|%d saat", 14 | "minute": "bir dakika|%d dakika", 15 | "second": "bir saniye|%d saniye", 16 | "now": "az önce", 17 | "ago": "%s evvel", 18 | "from_now": "şu andan itibaren %s sonra", 19 | "before": "%s önce", 20 | "after": "%s sonra" 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/uk.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Ukrainian", 3 | "months": "січня|лютого|березня|квітня|травня|червня|липня|серпня|вересня|жовтня|листопада|грудня", 4 | "short_months": "січ|лют|бер|квіт|трав|черв|лип|серп|вер|жовт|лист|груд", 5 | "weeks": "неділя|понеділок|вівторок|середа|четвер|п’ятниця|субота", 6 | "short_weeks": "ндл|пнд|втр|срд|чтв|птн|сбт", 7 | "seasons": "Весна|Літо|Осінь|Зима", 8 | "constellations": "Овен|Телець|Близнюки|Рак|Лев|Діва|Терези|Скорпіон|Стрілець|Козоріг|Водолій|Риби", 9 | "year": "рік|2 роки|3 роки|4 роки|%d років", 10 | "month": "місяць|2 місяці|3 місяці|4 місяці|%d місяців", 11 | "week": "tиждень|2 тижні|3 тижні|4 тижні|%d тижнів", 12 | "day": "день|2 дні|3 дні|4 дні|%d днів", 13 | "hour": "1 година|2 години|3 години|4 години|%d годин", 14 | "minute": "1 хвилина|2 хвилини|3 хвилини|4 хвилини|%d хвилин", 15 | "second": "1 секунда|2 секунди|3 секунди|4 секунди|%d секунд", 16 | "now": "зараз", 17 | "ago": "%s тому", 18 | "from_now": "за %s", 19 | "before": "%s до", 20 | "after": "%s після" 21 | } -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/vi.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "VietNamese", 3 | "months": "Tháng Một|Tháng Hai|Tháng Ba|Tháng Tư|Tháng Năm|Tháng Sáu|Tháng Bảy|Tháng Tám|Tháng Chín|Tháng Mười|Tháng Mười Một|Tháng Mười Hai", 4 | "short_months": "Giêng|Hai|Ba|Bốn|Năm|Sáu|Bảy|Tám|Chìn|Mười|Một|Chạp", 5 | "weeks": "Chủ Nhật|Thứ Hai|Thứ Ba|Thứ Tư|Thứ Năm|Thứ Sáu|Thứ Bảy", 6 | "short_weeks": "CN|Hai|Ba|Tư|Năm|Sáu|Bảy", 7 | "seasons": "Xuân|Hè|Thu|Đông", 8 | "constellations": "Bạch Dương|Kim Ngưu|Song Tử|Cự Giải|Sư Tử|Xử Nữ|Thiên Bình|Bọ Cạp|Nhân Mã|Ma Kết|Bảo Bình|Song Ngư", 9 | "year": "%d năm", 10 | "month": "%d tháng", 11 | "week": "%d tuần", 12 | "day": "%d ngày", 13 | "hour": "%d giờ", 14 | "minute": "%d phút", 15 | "second": "%d giây", 16 | "now": "vừa xong", 17 | "ago": "%s trước", 18 | "from_now": "%s từ bây giờ", 19 | "before": "%s trước", 20 | "after": "%s sau" 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/zh-CN.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Simplified Chinese", 3 | "months": "一月|二月|三月|四月|五月|六月|七月|八月|九月|十月|十一月|十二月", 4 | "short_months": "1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月", 5 | "weeks": "星期日|星期一|星期二|星期三|星期四|星期五|星期六", 6 | "short_weeks": "周日|周一|周二|周三|周四|周五|周六", 7 | "seasons": "春季|夏季|秋季|冬季", 8 | "constellations": "白羊座|金牛座|双子座|巨蟹座|狮子座|处女座|天秤座|天蝎座|射手座|摩羯座|水瓶座|双鱼座", 9 | "year": "%d 年", 10 | "month": "%d 个月", 11 | "week": "%d 周", 12 | "day": "%d 天", 13 | "hour": "%d 小时", 14 | "minute": "%d 分钟", 15 | "second": "%d 秒", 16 | "now": "刚刚", 17 | "ago": "%s前", 18 | "from_now": "%s后", 19 | "before": "%s前", 20 | "after": "%s后" 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/lang/zh-TW.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Traditional Chinese", 3 | "months": "一月|二月|三月|四月|五月|六月|七月|八月|九月|十月|十一月|十二月", 4 | "short_months": "1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月", 5 | "weeks": "星期日|星期一|星期二|星期三|星期四|星期五|星期六", 6 | "short_weeks": "週日|週一|週二|週三|週四|週五|週六", 7 | "seasons": "春季|夏季|秋季|冬季", 8 | "constellations": "白羊座|金牛座|雙子座|巨蟹座|獅子座|處女座|天秤座|天蠍座|射手座|摩羯座|水瓶座|雙魚座", 9 | "year": "%d 年", 10 | "month": "%d 個月", 11 | "week": "%d 週", 12 | "day": "%d 天", 13 | "hour": "%d 小時", 14 | "minute": "%d 分鐘", 15 | "second": "%d 秒", 16 | "now": "剛剛", 17 | "ago": "%s前", 18 | "from_now": "%s後", 19 | "before": "%s前", 20 | "after": "%s後" 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/dromara/carbon/v2/test.go: -------------------------------------------------------------------------------- 1 | package carbon 2 | 3 | // SetTestNow sets a test Carbon instance (real or mock) to be returned when a "now" instance is created. 4 | // 设置当前测试时间 5 | func (c *Carbon) SetTestNow(carbon Carbon) { 6 | c.testNow, c.loc = carbon.TimestampNano(), carbon.loc 7 | } 8 | 9 | // UnSetTestNow clears a test Carbon instance (real or mock) to be returned when a "now" instance is created. 10 | // 清除当前测试时间 11 | func (c *Carbon) UnSetTestNow() { 12 | c.testNow = 0 13 | } 14 | 15 | // IsSetTestNow report whether there is testing time now. 16 | // 是否设置过当前测试时间 17 | func (c Carbon) IsSetTestNow() bool { 18 | return c.testNow > 0 19 | } 20 | -------------------------------------------------------------------------------- /vendor/github.com/dsnet/compress/bzip2/fuzz_off.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016, Joe Tsai. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE.md file. 4 | 5 | //go:build !gofuzz 6 | // +build !gofuzz 7 | 8 | // This file exists to suppress fuzzing details from release builds. 9 | 10 | package bzip2 11 | 12 | type fuzzReader struct{} 13 | 14 | func (*fuzzReader) updateChecksum(int64, uint32) {} 15 | -------------------------------------------------------------------------------- /vendor/github.com/dsnet/compress/internal/debug.go: -------------------------------------------------------------------------------- 1 | // Copyright 2015, Joe Tsai. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE.md file. 4 | 5 | //go:build debug && !gofuzz 6 | // +build debug,!gofuzz 7 | 8 | package internal 9 | 10 | const ( 11 | Debug = true 12 | GoFuzz = false 13 | ) 14 | -------------------------------------------------------------------------------- /vendor/github.com/dsnet/compress/internal/gofuzz.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016, Joe Tsai. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE.md file. 4 | 5 | //go:build gofuzz 6 | // +build gofuzz 7 | 8 | package internal 9 | 10 | const ( 11 | Debug = true 12 | GoFuzz = true 13 | ) 14 | -------------------------------------------------------------------------------- /vendor/github.com/dsnet/compress/internal/release.go: -------------------------------------------------------------------------------- 1 | // Copyright 2015, Joe Tsai. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE.md file. 4 | 5 | //go:build !debug && !gofuzz 6 | // +build !debug,!gofuzz 7 | 8 | package internal 9 | 10 | // Debug indicates whether the debug build tag was set. 11 | // 12 | // If set, programs may choose to print with more human-readable 13 | // debug information and also perform sanity checks that would otherwise be too 14 | // expensive to run in a release build. 15 | const Debug = false 16 | 17 | // GoFuzz indicates whether the gofuzz build tag was set. 18 | // 19 | // If set, programs may choose to disable certain checks (like checksums) that 20 | // would be nearly impossible for gofuzz to properly get right. 21 | // If GoFuzz is set, it implies that Debug is set as well. 22 | const GoFuzz = false 23 | -------------------------------------------------------------------------------- /vendor/github.com/dsnet/compress/zbench.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Copyright 2017, Joe Tsai. All rights reserved. 4 | # Use of this source code is governed by a BSD-style 5 | # license that can be found in the LICENSE.md file. 6 | 7 | # zbench wraps internal/tool/bench and is useful for comparing benchmarks from 8 | # the implementations in this repository relative to other implementations. 9 | # 10 | # See internal/tool/bench/main.go for more details. 11 | cd $(dirname "${BASH_SOURCE[0]}")/internal/tool/bench 12 | go run $(go list -f '{{ join .GoFiles "\n" }}') "$@" 13 | -------------------------------------------------------------------------------- /vendor/github.com/dsnet/compress/zfuzz.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Copyright 2017, Joe Tsai. All rights reserved. 4 | # Use of this source code is governed by a BSD-style 5 | # license that can be found in the LICENSE.md file. 6 | 7 | # zfuzz wraps internal/tool/fuzz and is useful for fuzz testing each of 8 | # the implementations in this repository. 9 | cd $(dirname "${BASH_SOURCE[0]}")/internal/tool/fuzz 10 | ./fuzz.sh "$@" 11 | -------------------------------------------------------------------------------- /vendor/github.com/hashicorp/go-multierror/Makefile: -------------------------------------------------------------------------------- 1 | TEST?=./... 2 | 3 | default: test 4 | 5 | # test runs the test suite and vets the code. 6 | test: generate 7 | @echo "==> Running tests..." 8 | @go list $(TEST) \ 9 | | grep -v "/vendor/" \ 10 | | xargs -n1 go test -timeout=60s -parallel=10 ${TESTARGS} 11 | 12 | # testrace runs the race checker 13 | testrace: generate 14 | @echo "==> Running tests (race)..." 15 | @go list $(TEST) \ 16 | | grep -v "/vendor/" \ 17 | | xargs -n1 go test -timeout=60s -race ${TESTARGS} 18 | 19 | # updatedeps installs all the dependencies needed to run and build. 20 | updatedeps: 21 | @sh -c "'${CURDIR}/scripts/deps.sh' '${NAME}'" 22 | 23 | # generate runs `go generate` to build the dynamically generated source files. 24 | generate: 25 | @echo "==> Generating..." 26 | @find . -type f -name '.DS_Store' -delete 27 | @go list ./... \ 28 | | grep -v "/vendor/" \ 29 | | xargs -n1 go generate 30 | 31 | .PHONY: default test testrace updatedeps generate 32 | -------------------------------------------------------------------------------- /vendor/github.com/hashicorp/go-multierror/flatten.go: -------------------------------------------------------------------------------- 1 | package multierror 2 | 3 | // Flatten flattens the given error, merging any *Errors together into 4 | // a single *Error. 5 | func Flatten(err error) error { 6 | // If it isn't an *Error, just return the error as-is 7 | if _, ok := err.(*Error); !ok { 8 | return err 9 | } 10 | 11 | // Otherwise, make the result and flatten away! 12 | flatErr := new(Error) 13 | flatten(err, flatErr) 14 | return flatErr 15 | } 16 | 17 | func flatten(err error, flatErr *Error) { 18 | switch err := err.(type) { 19 | case *Error: 20 | for _, e := range err.Errors { 21 | flatten(e, flatErr) 22 | } 23 | default: 24 | flatErr.Errors = append(flatErr.Errors, err) 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /vendor/github.com/hashicorp/go-multierror/format.go: -------------------------------------------------------------------------------- 1 | package multierror 2 | 3 | import ( 4 | "fmt" 5 | "strings" 6 | ) 7 | 8 | // ErrorFormatFunc is a function callback that is called by Error to 9 | // turn the list of errors into a string. 10 | type ErrorFormatFunc func([]error) string 11 | 12 | // ListFormatFunc is a basic formatter that outputs the number of errors 13 | // that occurred along with a bullet point list of the errors. 14 | func ListFormatFunc(es []error) string { 15 | if len(es) == 1 { 16 | return fmt.Sprintf("1 error occurred:\n\t* %s\n\n", es[0]) 17 | } 18 | 19 | points := make([]string, len(es)) 20 | for i, err := range es { 21 | points[i] = fmt.Sprintf("* %s", err) 22 | } 23 | 24 | return fmt.Sprintf( 25 | "%d errors occurred:\n\t%s\n\n", 26 | len(es), strings.Join(points, "\n\t")) 27 | } 28 | -------------------------------------------------------------------------------- /vendor/github.com/hashicorp/go-multierror/group.go: -------------------------------------------------------------------------------- 1 | package multierror 2 | 3 | import "sync" 4 | 5 | // Group is a collection of goroutines which return errors that need to be 6 | // coalesced. 7 | type Group struct { 8 | mutex sync.Mutex 9 | err *Error 10 | wg sync.WaitGroup 11 | } 12 | 13 | // Go calls the given function in a new goroutine. 14 | // 15 | // If the function returns an error it is added to the group multierror which 16 | // is returned by Wait. 17 | func (g *Group) Go(f func() error) { 18 | g.wg.Add(1) 19 | 20 | go func() { 21 | defer g.wg.Done() 22 | 23 | if err := f(); err != nil { 24 | g.mutex.Lock() 25 | g.err = Append(g.err, err) 26 | g.mutex.Unlock() 27 | } 28 | }() 29 | } 30 | 31 | // Wait blocks until all function calls from the Go method have returned, then 32 | // returns the multierror. 33 | func (g *Group) Wait() *Error { 34 | g.wg.Wait() 35 | g.mutex.Lock() 36 | defer g.mutex.Unlock() 37 | return g.err 38 | } 39 | -------------------------------------------------------------------------------- /vendor/github.com/hashicorp/go-multierror/prefix.go: -------------------------------------------------------------------------------- 1 | package multierror 2 | 3 | import ( 4 | "fmt" 5 | 6 | "github.com/hashicorp/errwrap" 7 | ) 8 | 9 | // Prefix is a helper function that will prefix some text 10 | // to the given error. If the error is a multierror.Error, then 11 | // it will be prefixed to each wrapped error. 12 | // 13 | // This is useful to use when appending multiple multierrors 14 | // together in order to give better scoping. 15 | func Prefix(err error, prefix string) error { 16 | if err == nil { 17 | return nil 18 | } 19 | 20 | format := fmt.Sprintf("%s {{err}}", prefix) 21 | switch err := err.(type) { 22 | case *Error: 23 | // Typed nils can reach here, so initialize if we are nil 24 | if err == nil { 25 | err = new(Error) 26 | } 27 | 28 | // Wrap each of the errors 29 | for i, e := range err.Errors { 30 | err.Errors[i] = errwrap.Wrapf(format, e) 31 | } 32 | 33 | return err 34 | default: 35 | return errwrap.Wrapf(format, err) 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /vendor/github.com/hashicorp/go-multierror/sort.go: -------------------------------------------------------------------------------- 1 | package multierror 2 | 3 | // Len implements sort.Interface function for length 4 | func (err Error) Len() int { 5 | return len(err.Errors) 6 | } 7 | 8 | // Swap implements sort.Interface function for swapping elements 9 | func (err Error) Swap(i, j int) { 10 | err.Errors[i], err.Errors[j] = err.Errors[j], err.Errors[i] 11 | } 12 | 13 | // Less implements sort.Interface function for determining order 14 | func (err Error) Less(i, j int) bool { 15 | return err.Errors[i].Error() < err.Errors[j].Error() 16 | } 17 | -------------------------------------------------------------------------------- /vendor/github.com/hashicorp/golang-lru/v2/.gitignore: -------------------------------------------------------------------------------- 1 | # Compiled Object files, Static and Dynamic libs (Shared Objects) 2 | *.o 3 | *.a 4 | *.so 5 | 6 | # Folders 7 | _obj 8 | _test 9 | 10 | # Architecture specific extensions/prefixes 11 | *.[568vq] 12 | [568vq].out 13 | 14 | *.cgo1.go 15 | *.cgo2.c 16 | _cgo_defun.c 17 | _cgo_gotypes.go 18 | _cgo_export.* 19 | 20 | _testmain.go 21 | 22 | *.exe 23 | *.test 24 | -------------------------------------------------------------------------------- /vendor/github.com/hashicorp/golang-lru/v2/.golangci.yml: -------------------------------------------------------------------------------- 1 | # Copyright (c) HashiCorp, Inc. 2 | # SPDX-License-Identifier: MPL-2.0 3 | 4 | linters: 5 | fast: false 6 | disable-all: true 7 | enable: 8 | - revive 9 | - megacheck 10 | - govet 11 | - unconvert 12 | - gas 13 | - gocyclo 14 | - dupl 15 | - misspell 16 | - unparam 17 | - unused 18 | - typecheck 19 | - ineffassign 20 | # - stylecheck 21 | - exportloopref 22 | - gocritic 23 | - nakedret 24 | - gosimple 25 | - prealloc 26 | 27 | # golangci-lint configuration file 28 | linters-settings: 29 | revive: 30 | ignore-generated-header: true 31 | severity: warning 32 | rules: 33 | - name: package-comments 34 | severity: warning 35 | disabled: true 36 | - name: exported 37 | severity: warning 38 | disabled: false 39 | arguments: ["checkPrivateReceivers", "disableStutteringCheck"] 40 | 41 | issues: 42 | exclude-use-default: false 43 | exclude-rules: 44 | - path: _test\.go 45 | linters: 46 | - dupl 47 | -------------------------------------------------------------------------------- /vendor/github.com/klauspost/compress/.gitattributes: -------------------------------------------------------------------------------- 1 | * -text 2 | *.bin -text -diff 3 | -------------------------------------------------------------------------------- /vendor/github.com/klauspost/compress/.gitignore: -------------------------------------------------------------------------------- 1 | # Compiled Object files, Static and Dynamic libs (Shared Objects) 2 | *.o 3 | *.a 4 | *.so 5 | 6 | # Folders 7 | _obj 8 | _test 9 | 10 | # Architecture specific extensions/prefixes 11 | *.[568vq] 12 | [568vq].out 13 | 14 | *.cgo1.go 15 | *.cgo2.c 16 | _cgo_defun.c 17 | _cgo_gotypes.go 18 | _cgo_export.* 19 | 20 | _testmain.go 21 | 22 | *.exe 23 | *.test 24 | *.prof 25 | /s2/cmd/_s2sx/sfx-exe 26 | 27 | # Linux perf files 28 | perf.data 29 | perf.data.old 30 | 31 | # gdb history 32 | .gdb_history 33 | -------------------------------------------------------------------------------- /vendor/github.com/klauspost/compress/flate/matchlen_amd64.go: -------------------------------------------------------------------------------- 1 | //go:build amd64 && !appengine && !noasm && gc 2 | // +build amd64,!appengine,!noasm,gc 3 | 4 | // Copyright 2019+ Klaus Post. All rights reserved. 5 | // License information can be found in the LICENSE file. 6 | 7 | package flate 8 | 9 | // matchLen returns how many bytes match in a and b 10 | // 11 | // It assumes that: 12 | // 13 | // len(a) <= len(b) and len(a) > 0 14 | // 15 | //go:noescape 16 | func matchLen(a []byte, b []byte) int 17 | -------------------------------------------------------------------------------- /vendor/github.com/klauspost/compress/flate/matchlen_generic.go: -------------------------------------------------------------------------------- 1 | //go:build !amd64 || appengine || !gc || noasm 2 | // +build !amd64 appengine !gc noasm 3 | 4 | // Copyright 2019+ Klaus Post. All rights reserved. 5 | // License information can be found in the LICENSE file. 6 | 7 | package flate 8 | 9 | import ( 10 | "encoding/binary" 11 | "math/bits" 12 | ) 13 | 14 | // matchLen returns the maximum common prefix length of a and b. 15 | // a must be the shortest of the two. 16 | func matchLen(a, b []byte) (n int) { 17 | for ; len(a) >= 8 && len(b) >= 8; a, b = a[8:], b[8:] { 18 | diff := binary.LittleEndian.Uint64(a) ^ binary.LittleEndian.Uint64(b) 19 | if diff != 0 { 20 | return n + bits.TrailingZeros64(diff)>>3 21 | } 22 | n += 8 23 | } 24 | 25 | for i := range a { 26 | if a[i] != b[i] { 27 | break 28 | } 29 | n++ 30 | } 31 | return n 32 | 33 | } 34 | -------------------------------------------------------------------------------- /vendor/github.com/klauspost/compress/gen.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | cd s2/cmd/_s2sx/ || exit 1 4 | go generate . 5 | -------------------------------------------------------------------------------- /vendor/github.com/klauspost/compress/huff0/.gitignore: -------------------------------------------------------------------------------- 1 | /huff0-fuzz.zip 2 | -------------------------------------------------------------------------------- /vendor/github.com/klauspost/compress/internal/cpuinfo/cpuinfo.go: -------------------------------------------------------------------------------- 1 | // Package cpuinfo gives runtime info about the current CPU. 2 | // 3 | // This is a very limited module meant for use internally 4 | // in this project. For more versatile solution check 5 | // https://github.com/klauspost/cpuid. 6 | package cpuinfo 7 | 8 | // HasBMI1 checks whether an x86 CPU supports the BMI1 extension. 9 | func HasBMI1() bool { 10 | return hasBMI1 11 | } 12 | 13 | // HasBMI2 checks whether an x86 CPU supports the BMI2 extension. 14 | func HasBMI2() bool { 15 | return hasBMI2 16 | } 17 | 18 | // DisableBMI2 will disable BMI2, for testing purposes. 19 | // Call returned function to restore previous state. 20 | func DisableBMI2() func() { 21 | old := hasBMI2 22 | hasBMI2 = false 23 | return func() { 24 | hasBMI2 = old 25 | } 26 | } 27 | 28 | // HasBMI checks whether an x86 CPU supports both BMI1 and BMI2 extensions. 29 | func HasBMI() bool { 30 | return HasBMI1() && HasBMI2() 31 | } 32 | 33 | var hasBMI1 bool 34 | var hasBMI2 bool 35 | -------------------------------------------------------------------------------- /vendor/github.com/klauspost/compress/internal/cpuinfo/cpuinfo_amd64.go: -------------------------------------------------------------------------------- 1 | //go:build amd64 && !appengine && !noasm && gc 2 | // +build amd64,!appengine,!noasm,gc 3 | 4 | package cpuinfo 5 | 6 | // go:noescape 7 | func x86extensions() (bmi1, bmi2 bool) 8 | 9 | func init() { 10 | hasBMI1, hasBMI2 = x86extensions() 11 | } 12 | -------------------------------------------------------------------------------- /vendor/github.com/klauspost/compress/internal/cpuinfo/cpuinfo_amd64.s: -------------------------------------------------------------------------------- 1 | // +build !appengine 2 | // +build gc 3 | // +build !noasm 4 | 5 | #include "textflag.h" 6 | #include "funcdata.h" 7 | #include "go_asm.h" 8 | 9 | TEXT ·x86extensions(SB), NOSPLIT, $0 10 | // 1. determine max EAX value 11 | XORQ AX, AX 12 | CPUID 13 | 14 | CMPQ AX, $7 15 | JB unsupported 16 | 17 | // 2. EAX = 7, ECX = 0 --- see Table 3-8 "Information Returned by CPUID Instruction" 18 | MOVQ $7, AX 19 | MOVQ $0, CX 20 | CPUID 21 | 22 | BTQ $3, BX // bit 3 = BMI1 23 | SETCS AL 24 | 25 | BTQ $8, BX // bit 8 = BMI2 26 | SETCS AH 27 | 28 | MOVB AL, bmi1+0(FP) 29 | MOVB AH, bmi2+1(FP) 30 | RET 31 | 32 | unsupported: 33 | XORQ AX, AX 34 | MOVB AL, bmi1+0(FP) 35 | MOVB AL, bmi2+1(FP) 36 | RET 37 | -------------------------------------------------------------------------------- /vendor/github.com/klauspost/compress/internal/race/norace.go: -------------------------------------------------------------------------------- 1 | // Copyright 2015 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build !race 6 | 7 | package race 8 | 9 | func ReadSlice[T any](s []T) { 10 | } 11 | 12 | func WriteSlice[T any](s []T) { 13 | } 14 | -------------------------------------------------------------------------------- /vendor/github.com/klauspost/compress/internal/race/race.go: -------------------------------------------------------------------------------- 1 | // Copyright 2015 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build race 6 | 7 | package race 8 | 9 | import ( 10 | "runtime" 11 | "unsafe" 12 | ) 13 | 14 | func ReadSlice[T any](s []T) { 15 | if len(s) == 0 { 16 | return 17 | } 18 | runtime.RaceReadRange(unsafe.Pointer(&s[0]), len(s)*int(unsafe.Sizeof(s[0]))) 19 | } 20 | 21 | func WriteSlice[T any](s []T) { 22 | if len(s) == 0 { 23 | return 24 | } 25 | runtime.RaceWriteRange(unsafe.Pointer(&s[0]), len(s)*int(unsafe.Sizeof(s[0]))) 26 | } 27 | -------------------------------------------------------------------------------- /vendor/github.com/klauspost/compress/s2/.gitignore: -------------------------------------------------------------------------------- 1 | testdata/bench 2 | 3 | # These explicitly listed benchmark data files are for an obsolete version of 4 | # snappy_test.go. 5 | testdata/alice29.txt 6 | testdata/asyoulik.txt 7 | testdata/fireworks.jpeg 8 | testdata/geo.protodata 9 | testdata/html 10 | testdata/html_x_4 11 | testdata/kppkn.gtb 12 | testdata/lcet10.txt 13 | testdata/paper-100k.pdf 14 | testdata/plrabn12.txt 15 | testdata/urls.10K 16 | -------------------------------------------------------------------------------- /vendor/github.com/klauspost/compress/s2/decode_asm.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 The Snappy-Go Authors. All rights reserved. 2 | // Copyright (c) 2019 Klaus Post. All rights reserved. 3 | // Use of this source code is governed by a BSD-style 4 | // license that can be found in the LICENSE file. 5 | 6 | //go:build (amd64 || arm64) && !appengine && gc && !noasm 7 | // +build amd64 arm64 8 | // +build !appengine 9 | // +build gc 10 | // +build !noasm 11 | 12 | package s2 13 | 14 | // decode has the same semantics as in decode_other.go. 15 | // 16 | //go:noescape 17 | func s2Decode(dst, src []byte) int 18 | -------------------------------------------------------------------------------- /vendor/github.com/klauspost/compress/s2sx.mod: -------------------------------------------------------------------------------- 1 | module github.com/klauspost/compress 2 | 3 | go 1.19 4 | 5 | -------------------------------------------------------------------------------- /vendor/github.com/klauspost/compress/s2sx.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/vendor/github.com/klauspost/compress/s2sx.sum -------------------------------------------------------------------------------- /vendor/github.com/klauspost/compress/zstd/internal/xxhash/LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2016 Caleb Spare 2 | 3 | MIT License 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | "Software"), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 19 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 20 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 21 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 22 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /vendor/github.com/klauspost/compress/zstd/internal/xxhash/xxhash_asm.go: -------------------------------------------------------------------------------- 1 | //go:build (amd64 || arm64) && !appengine && gc && !purego && !noasm 2 | // +build amd64 arm64 3 | // +build !appengine 4 | // +build gc 5 | // +build !purego 6 | // +build !noasm 7 | 8 | package xxhash 9 | 10 | // Sum64 computes the 64-bit xxHash digest of b. 11 | // 12 | //go:noescape 13 | func Sum64(b []byte) uint64 14 | 15 | //go:noescape 16 | func writeBlocks(s *Digest, b []byte) int 17 | -------------------------------------------------------------------------------- /vendor/github.com/klauspost/compress/zstd/internal/xxhash/xxhash_safe.go: -------------------------------------------------------------------------------- 1 | package xxhash 2 | 3 | // Sum64String computes the 64-bit xxHash digest of s. 4 | func Sum64String(s string) uint64 { 5 | return Sum64([]byte(s)) 6 | } 7 | 8 | // WriteString adds more data to d. It always returns len(s), nil. 9 | func (d *Digest) WriteString(s string) (n int, err error) { 10 | return d.Write([]byte(s)) 11 | } 12 | -------------------------------------------------------------------------------- /vendor/github.com/klauspost/compress/zstd/matchlen_amd64.go: -------------------------------------------------------------------------------- 1 | //go:build amd64 && !appengine && !noasm && gc 2 | // +build amd64,!appengine,!noasm,gc 3 | 4 | // Copyright 2019+ Klaus Post. All rights reserved. 5 | // License information can be found in the LICENSE file. 6 | 7 | package zstd 8 | 9 | // matchLen returns how many bytes match in a and b 10 | // 11 | // It assumes that: 12 | // 13 | // len(a) <= len(b) and len(a) > 0 14 | // 15 | //go:noescape 16 | func matchLen(a []byte, b []byte) int 17 | -------------------------------------------------------------------------------- /vendor/github.com/klauspost/compress/zstd/matchlen_generic.go: -------------------------------------------------------------------------------- 1 | //go:build !amd64 || appengine || !gc || noasm 2 | // +build !amd64 appengine !gc noasm 3 | 4 | // Copyright 2019+ Klaus Post. All rights reserved. 5 | // License information can be found in the LICENSE file. 6 | 7 | package zstd 8 | 9 | import ( 10 | "encoding/binary" 11 | "math/bits" 12 | ) 13 | 14 | // matchLen returns the maximum common prefix length of a and b. 15 | // a must be the shortest of the two. 16 | func matchLen(a, b []byte) (n int) { 17 | for ; len(a) >= 8 && len(b) >= 8; a, b = a[8:], b[8:] { 18 | diff := binary.LittleEndian.Uint64(a) ^ binary.LittleEndian.Uint64(b) 19 | if diff != 0 { 20 | return n + bits.TrailingZeros64(diff)>>3 21 | } 22 | n += 8 23 | } 24 | 25 | for i := range a { 26 | if a[i] != b[i] { 27 | break 28 | } 29 | n++ 30 | } 31 | return n 32 | 33 | } 34 | -------------------------------------------------------------------------------- /vendor/github.com/klauspost/pgzip/.gitignore: -------------------------------------------------------------------------------- 1 | # Compiled Object files, Static and Dynamic libs (Shared Objects) 2 | *.o 3 | *.a 4 | *.so 5 | 6 | # Folders 7 | _obj 8 | _test 9 | 10 | # Architecture specific extensions/prefixes 11 | *.[568vq] 12 | [568vq].out 13 | 14 | *.cgo1.go 15 | *.cgo2.c 16 | _cgo_defun.c 17 | _cgo_gotypes.go 18 | _cgo_export.* 19 | 20 | _testmain.go 21 | 22 | *.exe 23 | *.test 24 | *.prof 25 | -------------------------------------------------------------------------------- /vendor/github.com/klauspost/pgzip/.travis.yml: -------------------------------------------------------------------------------- 1 | 2 | arch: 3 | - amd64 4 | - ppc64le 5 | language: go 6 | 7 | os: 8 | - linux 9 | - osx 10 | 11 | go: 12 | - 1.13.x 13 | - 1.14.x 14 | - 1.15.x 15 | - master 16 | 17 | env: 18 | - GO111MODULE=off 19 | 20 | script: 21 | - diff <(gofmt -d .) <(printf "") 22 | - go test -v -cpu=1,2,4 . 23 | - go test -v -cpu=2 -race -short . 24 | 25 | matrix: 26 | allow_failures: 27 | - go: 'master' 28 | fast_finish: true 29 | -------------------------------------------------------------------------------- /vendor/github.com/klauspost/pgzip/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2014 Klaus Post 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | 23 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-colorable/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2016 Yasuhiro Matsumoto 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-colorable/colorable_appengine.go: -------------------------------------------------------------------------------- 1 | //go:build appengine 2 | // +build appengine 3 | 4 | package colorable 5 | 6 | import ( 7 | "io" 8 | "os" 9 | 10 | _ "github.com/mattn/go-isatty" 11 | ) 12 | 13 | // NewColorable returns new instance of Writer which handles escape sequence. 14 | func NewColorable(file *os.File) io.Writer { 15 | if file == nil { 16 | panic("nil passed instead of *os.File to NewColorable()") 17 | } 18 | 19 | return file 20 | } 21 | 22 | // NewColorableStdout returns new instance of Writer which handles escape sequence for stdout. 23 | func NewColorableStdout() io.Writer { 24 | return os.Stdout 25 | } 26 | 27 | // NewColorableStderr returns new instance of Writer which handles escape sequence for stderr. 28 | func NewColorableStderr() io.Writer { 29 | return os.Stderr 30 | } 31 | 32 | // EnableColorsStdout enable colors if possible. 33 | func EnableColorsStdout(enabled *bool) func() { 34 | if enabled != nil { 35 | *enabled = true 36 | } 37 | return func() {} 38 | } 39 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-colorable/colorable_others.go: -------------------------------------------------------------------------------- 1 | //go:build !windows && !appengine 2 | // +build !windows,!appengine 3 | 4 | package colorable 5 | 6 | import ( 7 | "io" 8 | "os" 9 | 10 | _ "github.com/mattn/go-isatty" 11 | ) 12 | 13 | // NewColorable returns new instance of Writer which handles escape sequence. 14 | func NewColorable(file *os.File) io.Writer { 15 | if file == nil { 16 | panic("nil passed instead of *os.File to NewColorable()") 17 | } 18 | 19 | return file 20 | } 21 | 22 | // NewColorableStdout returns new instance of Writer which handles escape sequence for stdout. 23 | func NewColorableStdout() io.Writer { 24 | return os.Stdout 25 | } 26 | 27 | // NewColorableStderr returns new instance of Writer which handles escape sequence for stderr. 28 | func NewColorableStderr() io.Writer { 29 | return os.Stderr 30 | } 31 | 32 | // EnableColorsStdout enable colors if possible. 33 | func EnableColorsStdout(enabled *bool) func() { 34 | if enabled != nil { 35 | *enabled = true 36 | } 37 | return func() {} 38 | } 39 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-colorable/go.test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -e 4 | echo "" > coverage.txt 5 | 6 | for d in $(go list ./... | grep -v vendor); do 7 | go test -race -coverprofile=profile.out -covermode=atomic "$d" 8 | if [ -f profile.out ]; then 9 | cat profile.out >> coverage.txt 10 | rm profile.out 11 | fi 12 | done 13 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-isatty/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) Yasuhiro MATSUMOTO 2 | 3 | MIT License (Expat) 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 6 | 7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 10 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-isatty/doc.go: -------------------------------------------------------------------------------- 1 | // Package isatty implements interface to isatty 2 | package isatty 3 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-isatty/go.test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -e 4 | echo "" > coverage.txt 5 | 6 | for d in $(go list ./... | grep -v vendor); do 7 | go test -race -coverprofile=profile.out -covermode=atomic "$d" 8 | if [ -f profile.out ]; then 9 | cat profile.out >> coverage.txt 10 | rm profile.out 11 | fi 12 | done 13 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-isatty/isatty_bsd.go: -------------------------------------------------------------------------------- 1 | //go:build (darwin || freebsd || openbsd || netbsd || dragonfly || hurd) && !appengine 2 | // +build darwin freebsd openbsd netbsd dragonfly hurd 3 | // +build !appengine 4 | 5 | package isatty 6 | 7 | import "golang.org/x/sys/unix" 8 | 9 | // IsTerminal return true if the file descriptor is terminal. 10 | func IsTerminal(fd uintptr) bool { 11 | _, err := unix.IoctlGetTermios(int(fd), unix.TIOCGETA) 12 | return err == nil 13 | } 14 | 15 | // IsCygwinTerminal return true if the file descriptor is a cygwin or msys2 16 | // terminal. This is also always false on this environment. 17 | func IsCygwinTerminal(fd uintptr) bool { 18 | return false 19 | } 20 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-isatty/isatty_others.go: -------------------------------------------------------------------------------- 1 | //go:build appengine || js || nacl || wasm 2 | // +build appengine js nacl wasm 3 | 4 | package isatty 5 | 6 | // IsTerminal returns true if the file descriptor is terminal which 7 | // is always false on js and appengine classic which is a sandboxed PaaS. 8 | func IsTerminal(fd uintptr) bool { 9 | return false 10 | } 11 | 12 | // IsCygwinTerminal() return true if the file descriptor is a cygwin or msys2 13 | // terminal. This is also always false on this environment. 14 | func IsCygwinTerminal(fd uintptr) bool { 15 | return false 16 | } 17 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-isatty/isatty_plan9.go: -------------------------------------------------------------------------------- 1 | //go:build plan9 2 | // +build plan9 3 | 4 | package isatty 5 | 6 | import ( 7 | "syscall" 8 | ) 9 | 10 | // IsTerminal returns true if the given file descriptor is a terminal. 11 | func IsTerminal(fd uintptr) bool { 12 | path, err := syscall.Fd2path(int(fd)) 13 | if err != nil { 14 | return false 15 | } 16 | return path == "/dev/cons" || path == "/mnt/term/dev/cons" 17 | } 18 | 19 | // IsCygwinTerminal return true if the file descriptor is a cygwin or msys2 20 | // terminal. This is also always false on this environment. 21 | func IsCygwinTerminal(fd uintptr) bool { 22 | return false 23 | } 24 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-isatty/isatty_solaris.go: -------------------------------------------------------------------------------- 1 | //go:build solaris && !appengine 2 | // +build solaris,!appengine 3 | 4 | package isatty 5 | 6 | import ( 7 | "golang.org/x/sys/unix" 8 | ) 9 | 10 | // IsTerminal returns true if the given file descriptor is a terminal. 11 | // see: https://src.illumos.org/source/xref/illumos-gate/usr/src/lib/libc/port/gen/isatty.c 12 | func IsTerminal(fd uintptr) bool { 13 | _, err := unix.IoctlGetTermio(int(fd), unix.TCGETA) 14 | return err == nil 15 | } 16 | 17 | // IsCygwinTerminal return true if the file descriptor is a cygwin or msys2 18 | // terminal. This is also always false on this environment. 19 | func IsCygwinTerminal(fd uintptr) bool { 20 | return false 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-isatty/isatty_tcgets.go: -------------------------------------------------------------------------------- 1 | //go:build (linux || aix || zos) && !appengine 2 | // +build linux aix zos 3 | // +build !appengine 4 | 5 | package isatty 6 | 7 | import "golang.org/x/sys/unix" 8 | 9 | // IsTerminal return true if the file descriptor is terminal. 10 | func IsTerminal(fd uintptr) bool { 11 | _, err := unix.IoctlGetTermios(int(fd), unix.TCGETS) 12 | return err == nil 13 | } 14 | 15 | // IsCygwinTerminal return true if the file descriptor is a cygwin or msys2 16 | // terminal. This is also always false on this environment. 17 | func IsCygwinTerminal(fd uintptr) bool { 18 | return false 19 | } 20 | -------------------------------------------------------------------------------- /vendor/github.com/mholt/archives/.gitignore: -------------------------------------------------------------------------------- 1 | _gitignore -------------------------------------------------------------------------------- /vendor/github.com/mholt/archives/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2016 Matthew Holt 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. -------------------------------------------------------------------------------- /vendor/github.com/nwaples/rardecode/v2/README.md: -------------------------------------------------------------------------------- 1 | # rardecode 2 | [![GoDoc](https://godoc.org/github.com/nwaples/rardecode?status.svg)](https://godoc.org/github.com/nwaples/rardecode) 3 | 4 | A go package for reading RAR archives. 5 | -------------------------------------------------------------------------------- /vendor/github.com/pierrec/lz4/v4/.gitignore: -------------------------------------------------------------------------------- 1 | # Created by https://www.gitignore.io/api/macos 2 | 3 | ### macOS ### 4 | *.DS_Store 5 | .AppleDouble 6 | .LSOverride 7 | 8 | # Icon must end with two \r 9 | Icon 10 | 11 | 12 | # Thumbnails 13 | ._* 14 | 15 | # Files that might appear in the root of a volume 16 | .DocumentRevisions-V100 17 | .fseventsd 18 | .Spotlight-V100 19 | .TemporaryItems 20 | .Trashes 21 | .VolumeIcon.icns 22 | .com.apple.timemachine.donotpresent 23 | 24 | # Directories potentially created on remote AFP share 25 | .AppleDB 26 | .AppleDesktop 27 | Network Trash Folder 28 | Temporary Items 29 | .apdisk 30 | 31 | # End of https://www.gitignore.io/api/macos 32 | 33 | cmd/*/*exe 34 | .idea 35 | 36 | fuzz/*.zip 37 | -------------------------------------------------------------------------------- /vendor/github.com/pierrec/lz4/v4/internal/lz4block/decode_asm.go: -------------------------------------------------------------------------------- 1 | //go:build (amd64 || arm || arm64) && !appengine && gc && !noasm 2 | // +build amd64 arm arm64 3 | // +build !appengine 4 | // +build gc 5 | // +build !noasm 6 | 7 | package lz4block 8 | 9 | //go:noescape 10 | func decodeBlock(dst, src, dict []byte) int 11 | -------------------------------------------------------------------------------- /vendor/github.com/pierrec/lz4/v4/internal/lz4errors/errors.go: -------------------------------------------------------------------------------- 1 | package lz4errors 2 | 3 | type Error string 4 | 5 | func (e Error) Error() string { return string(e) } 6 | 7 | const ( 8 | ErrInvalidSourceShortBuffer Error = "lz4: invalid source or destination buffer too short" 9 | ErrInvalidFrame Error = "lz4: bad magic number" 10 | ErrInternalUnhandledState Error = "lz4: unhandled state" 11 | ErrInvalidHeaderChecksum Error = "lz4: invalid header checksum" 12 | ErrInvalidBlockChecksum Error = "lz4: invalid block checksum" 13 | ErrInvalidFrameChecksum Error = "lz4: invalid frame checksum" 14 | ErrOptionInvalidCompressionLevel Error = "lz4: invalid compression level" 15 | ErrOptionClosedOrError Error = "lz4: cannot apply options on closed or in error object" 16 | ErrOptionInvalidBlockSize Error = "lz4: invalid block size" 17 | ErrOptionNotApplicable Error = "lz4: option not applicable" 18 | ErrWriterNotClosed Error = "lz4: writer not closed" 19 | ) 20 | -------------------------------------------------------------------------------- /vendor/github.com/pierrec/lz4/v4/internal/xxh32/xxh32zero_arm.go: -------------------------------------------------------------------------------- 1 | // +build !noasm 2 | 3 | package xxh32 4 | 5 | // ChecksumZero returns the 32-bit hash of input. 6 | // 7 | //go:noescape 8 | func ChecksumZero(input []byte) uint32 9 | 10 | //go:noescape 11 | func update(v *[4]uint32, buf *[16]byte, input []byte) 12 | -------------------------------------------------------------------------------- /vendor/github.com/pierrec/lz4/v4/internal/xxh32/xxh32zero_other.go: -------------------------------------------------------------------------------- 1 | // +build !arm noasm 2 | 3 | package xxh32 4 | 5 | // ChecksumZero returns the 32-bit hash of input. 6 | func ChecksumZero(input []byte) uint32 { return checksumZeroGo(input) } 7 | 8 | func update(v *[4]uint32, buf *[16]byte, input []byte) { 9 | updateGo(v, buf, input) 10 | } 11 | -------------------------------------------------------------------------------- /vendor/github.com/pierrec/lz4/v4/state_gen.go: -------------------------------------------------------------------------------- 1 | // Code generated by "stringer -type=aState -output state_gen.go"; DO NOT EDIT. 2 | 3 | package lz4 4 | 5 | import "strconv" 6 | 7 | func _() { 8 | // An "invalid array index" compiler error signifies that the constant values have changed. 9 | // Re-run the stringer command to generate them again. 10 | var x [1]struct{} 11 | _ = x[noState-0] 12 | _ = x[errorState-1] 13 | _ = x[newState-2] 14 | _ = x[readState-3] 15 | _ = x[writeState-4] 16 | _ = x[closedState-5] 17 | } 18 | 19 | const _aState_name = "noStateerrorStatenewStatereadStatewriteStateclosedState" 20 | 21 | var _aState_index = [...]uint8{0, 7, 17, 25, 34, 44, 55} 22 | 23 | func (i aState) String() string { 24 | if i >= aState(len(_aState_index)-1) { 25 | return "aState(" + strconv.FormatInt(int64(i), 10) + ")" 26 | } 27 | return _aState_name[_aState_index[i]:_aState_index[i+1]] 28 | } 29 | -------------------------------------------------------------------------------- /vendor/github.com/pkg/errors/.gitignore: -------------------------------------------------------------------------------- 1 | # Compiled Object files, Static and Dynamic libs (Shared Objects) 2 | *.o 3 | *.a 4 | *.so 5 | 6 | # Folders 7 | _obj 8 | _test 9 | 10 | # Architecture specific extensions/prefixes 11 | *.[568vq] 12 | [568vq].out 13 | 14 | *.cgo1.go 15 | *.cgo2.c 16 | _cgo_defun.c 17 | _cgo_gotypes.go 18 | _cgo_export.* 19 | 20 | _testmain.go 21 | 22 | *.exe 23 | *.test 24 | *.prof 25 | -------------------------------------------------------------------------------- /vendor/github.com/pkg/errors/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | go_import_path: github.com/pkg/errors 3 | go: 4 | - 1.11.x 5 | - 1.12.x 6 | - 1.13.x 7 | - tip 8 | 9 | script: 10 | - make check 11 | -------------------------------------------------------------------------------- /vendor/github.com/pkg/errors/Makefile: -------------------------------------------------------------------------------- 1 | PKGS := github.com/pkg/errors 2 | SRCDIRS := $(shell go list -f '{{.Dir}}' $(PKGS)) 3 | GO := go 4 | 5 | check: test vet gofmt misspell unconvert staticcheck ineffassign unparam 6 | 7 | test: 8 | $(GO) test $(PKGS) 9 | 10 | vet: | test 11 | $(GO) vet $(PKGS) 12 | 13 | staticcheck: 14 | $(GO) get honnef.co/go/tools/cmd/staticcheck 15 | staticcheck -checks all $(PKGS) 16 | 17 | misspell: 18 | $(GO) get github.com/client9/misspell/cmd/misspell 19 | misspell \ 20 | -locale GB \ 21 | -error \ 22 | *.md *.go 23 | 24 | unconvert: 25 | $(GO) get github.com/mdempsky/unconvert 26 | unconvert -v $(PKGS) 27 | 28 | ineffassign: 29 | $(GO) get github.com/gordonklaus/ineffassign 30 | find $(SRCDIRS) -name '*.go' | xargs ineffassign 31 | 32 | pedantic: check errcheck 33 | 34 | unparam: 35 | $(GO) get mvdan.cc/unparam 36 | unparam ./... 37 | 38 | errcheck: 39 | $(GO) get github.com/kisielk/errcheck 40 | errcheck $(PKGS) 41 | 42 | gofmt: 43 | @echo Checking code is gofmted 44 | @test -z "$(shell gofmt -s -l -d -e $(SRCDIRS) | tee /dev/stderr)" 45 | -------------------------------------------------------------------------------- /vendor/github.com/pkg/errors/appveyor.yml: -------------------------------------------------------------------------------- 1 | version: build-{build}.{branch} 2 | 3 | clone_folder: C:\gopath\src\github.com\pkg\errors 4 | shallow_clone: true # for startup speed 5 | 6 | environment: 7 | GOPATH: C:\gopath 8 | 9 | platform: 10 | - x64 11 | 12 | # http://www.appveyor.com/docs/installed-software 13 | install: 14 | # some helpful output for debugging builds 15 | - go version 16 | - go env 17 | # pre-installed MinGW at C:\MinGW is 32bit only 18 | # but MSYS2 at C:\msys64 has mingw64 19 | - set PATH=C:\msys64\mingw64\bin;%PATH% 20 | - gcc --version 21 | - g++ --version 22 | 23 | build_script: 24 | - go install -v ./... 25 | 26 | test_script: 27 | - set PATH=C:\gopath\bin;%PATH% 28 | - go test -v ./... 29 | 30 | #artifacts: 31 | # - path: '%GOPATH%\bin\*.exe' 32 | deploy: off 33 | -------------------------------------------------------------------------------- /vendor/github.com/robfig/cron/v3/.gitignore: -------------------------------------------------------------------------------- 1 | # Compiled Object files, Static and Dynamic libs (Shared Objects) 2 | *.o 3 | *.a 4 | *.so 5 | 6 | # Folders 7 | _obj 8 | _test 9 | 10 | # Architecture specific extensions/prefixes 11 | *.[568vq] 12 | [568vq].out 13 | 14 | *.cgo1.go 15 | *.cgo2.c 16 | _cgo_defun.c 17 | _cgo_gotypes.go 18 | _cgo_export.* 19 | 20 | _testmain.go 21 | 22 | *.exe 23 | -------------------------------------------------------------------------------- /vendor/github.com/robfig/cron/v3/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | -------------------------------------------------------------------------------- /vendor/github.com/robfig/cron/v3/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (C) 2012 Rob Figueiredo 2 | All Rights Reserved. 3 | 4 | MIT LICENSE 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | this software and associated documentation files (the "Software"), to deal in 8 | the Software without restriction, including without limitation the rights to 9 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 10 | the Software, and to permit persons to whom the Software is furnished to do so, 11 | subject to the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be included in all 14 | copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 18 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 19 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 20 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 21 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /vendor/github.com/robfig/cron/v3/constantdelay.go: -------------------------------------------------------------------------------- 1 | package cron 2 | 3 | import "time" 4 | 5 | // ConstantDelaySchedule represents a simple recurring duty cycle, e.g. "Every 5 minutes". 6 | // It does not support jobs more frequent than once a second. 7 | type ConstantDelaySchedule struct { 8 | Delay time.Duration 9 | } 10 | 11 | // Every returns a crontab Schedule that activates once every duration. 12 | // Delays of less than a second are not supported (will round up to 1 second). 13 | // Any fields less than a Second are truncated. 14 | func Every(duration time.Duration) ConstantDelaySchedule { 15 | if duration < time.Second { 16 | duration = time.Second 17 | } 18 | return ConstantDelaySchedule{ 19 | Delay: duration - time.Duration(duration.Nanoseconds())%time.Second, 20 | } 21 | } 22 | 23 | // Next returns the next time this should be run. 24 | // This rounds so that the next activation time will be on the second. 25 | func (schedule ConstantDelaySchedule) Next(t time.Time) time.Time { 26 | return t.Add(schedule.Delay - time.Duration(t.Nanosecond())*time.Nanosecond) 27 | } 28 | -------------------------------------------------------------------------------- /vendor/github.com/rs/zerolog/.gitignore: -------------------------------------------------------------------------------- 1 | # Compiled Object files, Static and Dynamic libs (Shared Objects) 2 | *.o 3 | *.a 4 | *.so 5 | 6 | # Folders 7 | _obj 8 | _test 9 | tmp 10 | 11 | # Architecture specific extensions/prefixes 12 | *.[568vq] 13 | [568vq].out 14 | 15 | *.cgo1.go 16 | *.cgo2.c 17 | _cgo_defun.c 18 | _cgo_gotypes.go 19 | _cgo_export.* 20 | 21 | _testmain.go 22 | 23 | *.exe 24 | *.test 25 | *.prof 26 | -------------------------------------------------------------------------------- /vendor/github.com/rs/zerolog/CNAME: -------------------------------------------------------------------------------- 1 | zerolog.io -------------------------------------------------------------------------------- /vendor/github.com/rs/zerolog/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Olivier Poitrey 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /vendor/github.com/rs/zerolog/_config.yml: -------------------------------------------------------------------------------- 1 | remote_theme: rs/gh-readme 2 | -------------------------------------------------------------------------------- /vendor/github.com/rs/zerolog/example.jsonl: -------------------------------------------------------------------------------- 1 | {"time":"5:41PM","level":"info","message":"Starting listener","listen":":8080","pid":37556} 2 | {"time":"5:41PM","level":"debug","message":"Access","database":"myapp","host":"localhost:4962","pid":37556} 3 | {"time":"5:41PM","level":"info","message":"Access","method":"GET","path":"/users","pid":37556,"resp_time":23} 4 | {"time":"5:41PM","level":"info","message":"Access","method":"POST","path":"/posts","pid":37556,"resp_time":532} 5 | {"time":"5:41PM","level":"warn","message":"Slow request","method":"POST","path":"/posts","pid":37556,"resp_time":532} 6 | {"time":"5:41PM","level":"info","message":"Access","method":"GET","path":"/users","pid":37556,"resp_time":10} 7 | {"time":"5:41PM","level":"error","message":"Database connection lost","database":"myapp","pid":37556,"error":"connection reset by peer"} 8 | -------------------------------------------------------------------------------- /vendor/github.com/rs/zerolog/go112.go: -------------------------------------------------------------------------------- 1 | // +build go1.12 2 | 3 | package zerolog 4 | 5 | // Since go 1.12, some auto generated init functions are hidden from 6 | // runtime.Caller. 7 | const contextCallerSkipFrameCount = 2 8 | -------------------------------------------------------------------------------- /vendor/github.com/rs/zerolog/internal/cbor/base.go: -------------------------------------------------------------------------------- 1 | package cbor 2 | 3 | // JSONMarshalFunc is used to marshal interface to JSON encoded byte slice. 4 | // Making it package level instead of embedded in Encoder brings 5 | // some extra efforts at importing, but avoids value copy when the functions 6 | // of Encoder being invoked. 7 | // DO REMEMBER to set this variable at importing, or 8 | // you might get a nil pointer dereference panic at runtime. 9 | var JSONMarshalFunc func(v interface{}) ([]byte, error) 10 | 11 | type Encoder struct{} 12 | 13 | // AppendKey adds a key (string) to the binary encoded log message 14 | func (e Encoder) AppendKey(dst []byte, key string) []byte { 15 | if len(dst) < 1 { 16 | dst = e.AppendBeginMarker(dst) 17 | } 18 | return e.AppendString(dst, key) 19 | } 20 | -------------------------------------------------------------------------------- /vendor/github.com/rs/zerolog/internal/json/base.go: -------------------------------------------------------------------------------- 1 | package json 2 | 3 | // JSONMarshalFunc is used to marshal interface to JSON encoded byte slice. 4 | // Making it package level instead of embedded in Encoder brings 5 | // some extra efforts at importing, but avoids value copy when the functions 6 | // of Encoder being invoked. 7 | // DO REMEMBER to set this variable at importing, or 8 | // you might get a nil pointer dereference panic at runtime. 9 | var JSONMarshalFunc func(v interface{}) ([]byte, error) 10 | 11 | type Encoder struct{} 12 | 13 | // AppendKey appends a new key to the output JSON. 14 | func (e Encoder) AppendKey(dst []byte, key string) []byte { 15 | if dst[len(dst)-1] != '{' { 16 | dst = append(dst, ',') 17 | } 18 | return append(e.AppendString(dst, key), ':') 19 | } 20 | -------------------------------------------------------------------------------- /vendor/github.com/rs/zerolog/not_go112.go: -------------------------------------------------------------------------------- 1 | // +build !go1.12 2 | 3 | package zerolog 4 | 5 | const contextCallerSkipFrameCount = 3 6 | -------------------------------------------------------------------------------- /vendor/github.com/rs/zerolog/pretty.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/vendor/github.com/rs/zerolog/pretty.png -------------------------------------------------------------------------------- /vendor/github.com/sorairolake/lzip-go/.bumpversion.toml: -------------------------------------------------------------------------------- 1 | # SPDX-FileCopyrightText: 2024 Shun Sakai 2 | # 3 | # SPDX-License-Identifier: Apache-2.0 OR MIT 4 | 5 | [tool.bumpversion] 6 | current_version = "0.3.5" 7 | 8 | [[tool.bumpversion.files]] 9 | filename = "cmd/glzip/cli.go" 10 | 11 | [[tool.bumpversion.files]] 12 | filename = "cmd/glzip/testdata/version.ct" 13 | 14 | [[tool.bumpversion.files]] 15 | filename = "docs/man/man1/glzip.1.adoc" 16 | -------------------------------------------------------------------------------- /vendor/github.com/sorairolake/lzip-go/.gitignore: -------------------------------------------------------------------------------- 1 | # SPDX-FileCopyrightText: 2024 Shun Sakai 2 | # 3 | # SPDX-License-Identifier: Apache-2.0 OR MIT 4 | 5 | # Binaries for programs and plugins 6 | *.exe 7 | *.exe~ 8 | *.dll 9 | *.so 10 | *.dylib 11 | /glzip 12 | 13 | # Test binary, built with `go test -c` 14 | *.test 15 | 16 | # Generated man page 17 | glzip.1 18 | 19 | # GoReleaser 20 | dist/ 21 | -------------------------------------------------------------------------------- /vendor/github.com/sorairolake/lzip-go/.goreleaser.yaml: -------------------------------------------------------------------------------- 1 | # SPDX-FileCopyrightText: 2024 Shun Sakai 2 | # 3 | # SPDX-License-Identifier: Apache-2.0 OR MIT 4 | 5 | version: 1 6 | 7 | before: 8 | hooks: 9 | - go mod tidy 10 | - asciidoctor -b manpage docs/man/man1/glzip.1.adoc 11 | 12 | builds: 13 | - main: ./cmd/glzip 14 | binary: glzip 15 | flags: 16 | - -trimpath 17 | ldflags: 18 | - -s -w 19 | env: 20 | - CGO_ENABLED=0 21 | goos: 22 | - darwin 23 | - freebsd 24 | - linux 25 | - openbsd 26 | - windows 27 | goarch: 28 | - amd64 29 | - arm64 30 | 31 | archives: 32 | - format: tar.zst 33 | # use zip for windows archives 34 | format_overrides: 35 | - goos: windows 36 | format: zip 37 | files: 38 | - AUTHORS.adoc 39 | - CHANGELOG.adoc 40 | - CONTRIBUTING.adoc 41 | - docs/man/man1/glzip.1 42 | - LICENSES/* 43 | - README.md 44 | 45 | checksum: 46 | algorithm: sha3-512 47 | 48 | changelog: 49 | sort: asc 50 | filters: 51 | exclude: 52 | - "^docs:" 53 | - "^test:" 54 | -------------------------------------------------------------------------------- /vendor/github.com/sorairolake/lzip-go/AUTHORS.adoc: -------------------------------------------------------------------------------- 1 | // SPDX-FileCopyrightText: 2024 Shun Sakai 2 | // 3 | // SPDX-License-Identifier: Apache-2.0 OR MIT 4 | 5 | = List of Authors 6 | 7 | == Original author 8 | 9 | * https://github.com/sorairolake[Shun Sakai] 10 | -------------------------------------------------------------------------------- /vendor/github.com/sorairolake/lzip-go/go.sum.license: -------------------------------------------------------------------------------- 1 | SPDX-FileCopyrightText: 2024 Shun Sakai 2 | 3 | SPDX-License-Identifier: Apache-2.0 OR MIT 4 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2012-2020 Mat Ryer, Tyler Bunnell and contributors. 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/assert/assertion_format.go.tmpl: -------------------------------------------------------------------------------- 1 | {{.CommentFormat}} 2 | func {{.DocInfo.Name}}f(t TestingT, {{.ParamsFormat}}) bool { 3 | if h, ok := t.(tHelper); ok { h.Helper() } 4 | return {{.DocInfo.Name}}(t, {{.ForwardedParamsFormat}}) 5 | } 6 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/assert/assertion_forward.go.tmpl: -------------------------------------------------------------------------------- 1 | {{.CommentWithoutT "a"}} 2 | func (a *Assertions) {{.DocInfo.Name}}({{.Params}}) bool { 3 | if h, ok := a.t.(tHelper); ok { h.Helper() } 4 | return {{.DocInfo.Name}}(a.t, {{.ForwardedParams}}) 5 | } 6 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/assert/errors.go: -------------------------------------------------------------------------------- 1 | package assert 2 | 3 | import ( 4 | "errors" 5 | ) 6 | 7 | // AnError is an error instance useful for testing. If the code does not care 8 | // about error specifics, and only needs to return the error for example, this 9 | // error should be used to make the test code more readable. 10 | var AnError = errors.New("assert.AnError general error for testing") 11 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/assert/forward_assertions.go: -------------------------------------------------------------------------------- 1 | package assert 2 | 3 | // Assertions provides assertion methods around the 4 | // TestingT interface. 5 | type Assertions struct { 6 | t TestingT 7 | } 8 | 9 | // New makes a new Assertions object for the specified TestingT. 10 | func New(t TestingT) *Assertions { 11 | return &Assertions{ 12 | t: t, 13 | } 14 | } 15 | 16 | //go:generate sh -c "cd ../_codegen && go build && cd - && ../_codegen/_codegen -output-package=assert -template=assertion_forward.go.tmpl -include-format-funcs" 17 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/assert/yaml/yaml_custom.go: -------------------------------------------------------------------------------- 1 | //go:build testify_yaml_custom && !testify_yaml_fail && !testify_yaml_default 2 | // +build testify_yaml_custom,!testify_yaml_fail,!testify_yaml_default 3 | 4 | // Package yaml is an implementation of YAML functions that calls a pluggable implementation. 5 | // 6 | // This implementation is selected with the testify_yaml_custom build tag. 7 | // 8 | // go test -tags testify_yaml_custom 9 | // 10 | // This implementation can be used at build time to replace the default implementation 11 | // to avoid linking with [gopkg.in/yaml.v3]. 12 | // 13 | // In your test package: 14 | // 15 | // import assertYaml "github.com/stretchr/testify/assert/yaml" 16 | // 17 | // func init() { 18 | // assertYaml.Unmarshal = func (in []byte, out interface{}) error { 19 | // // ... 20 | // return nil 21 | // } 22 | // } 23 | package yaml 24 | 25 | var Unmarshal func(in []byte, out interface{}) error 26 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/assert/yaml/yaml_fail.go: -------------------------------------------------------------------------------- 1 | //go:build testify_yaml_fail && !testify_yaml_custom && !testify_yaml_default 2 | // +build testify_yaml_fail,!testify_yaml_custom,!testify_yaml_default 3 | 4 | // Package yaml is an implementation of YAML functions that always fail. 5 | // 6 | // This implementation can be used at build time to replace the default implementation 7 | // to avoid linking with [gopkg.in/yaml.v3]: 8 | // 9 | // go test -tags testify_yaml_fail 10 | package yaml 11 | 12 | import "errors" 13 | 14 | var errNotImplemented = errors.New("YAML functions are not available (see https://pkg.go.dev/github.com/stretchr/testify/assert/yaml)") 15 | 16 | func Unmarshal([]byte, interface{}) error { 17 | return errNotImplemented 18 | } 19 | -------------------------------------------------------------------------------- /vendor/github.com/therootcompany/xz/AUTHORS: -------------------------------------------------------------------------------- 1 | # Package xz authors 2 | 3 | Michael Cross 4 | 5 | # XZ Embedded authors 6 | 7 | Lasse Collin 8 | Igor Pavlov 9 | -------------------------------------------------------------------------------- /vendor/github.com/therootcompany/xz/README.md: -------------------------------------------------------------------------------- 1 | # Xz 2 | 3 | Package xz implements XZ decompression natively in Go. 4 | 5 | Documentation at . 6 | 7 | Download and install with `go get github.com/xi2/xz`. 8 | 9 | If you need compression as well as decompression, you might want to 10 | look at . 11 | 12 | # LICENSE 13 | 14 | This was originally released into the public domain by the AUTHORS. 15 | 16 | Here it is licensed more explicitly as Creative Commons CC0 1.0 Universal 17 | (CC0-1.0) so that it can be detected by automated tooling, and satisfy the legal 18 | requirements for vendor integration for cases in which a "public domain" 19 | statement is not sufficient. 20 | -------------------------------------------------------------------------------- /vendor/github.com/ulikunitz/xz/.gitignore: -------------------------------------------------------------------------------- 1 | # .gitignore 2 | 3 | TODO.html 4 | README.html 5 | 6 | lzma/writer.txt 7 | lzma/reader.txt 8 | 9 | cmd/gxz/gxz 10 | cmd/xb/xb 11 | 12 | # test executables 13 | *.test 14 | 15 | # profile files 16 | *.out 17 | 18 | # vim swap file 19 | .*.swp 20 | 21 | # executables on windows 22 | *.exe 23 | 24 | # default compression test file 25 | enwik8* 26 | 27 | # file generated by example 28 | example.xz -------------------------------------------------------------------------------- /vendor/github.com/ulikunitz/xz/SECURITY.md: -------------------------------------------------------------------------------- 1 | # Security Policy 2 | 3 | ## Supported Versions 4 | 5 | Currently the last minor version v0.5.x is supported. 6 | 7 | ## Reporting a Vulnerability 8 | 9 | You can privately report a vulnerability following this 10 | [procedure](https://docs.github.com/en/code-security/security-advisories/guidance-on-reporting-and-writing-information-about-vulnerabilities/privately-reporting-a-security-vulnerability#privately-reporting-a-security-vulnerability). 11 | Alternatively you can create a Github issue at 12 | . 13 | 14 | In both cases expect a response in at least 7 days. 15 | 16 | ## Security Advisories 17 | 18 | All security advisories for this project are published under 19 | [github.com/ulikunitz/xz/security/advisories](https://github.com/ulikunitz/xz/security/advisories?state=published). 20 | -------------------------------------------------------------------------------- /vendor/github.com/ulikunitz/xz/fox-check-none.xz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/vendor/github.com/ulikunitz/xz/fox-check-none.xz -------------------------------------------------------------------------------- /vendor/github.com/ulikunitz/xz/fox.xz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/vendor/github.com/ulikunitz/xz/fox.xz -------------------------------------------------------------------------------- /vendor/github.com/ulikunitz/xz/internal/hash/doc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2014-2022 Ulrich Kunitz. All rights reserved. 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 | Package hash provides rolling hashes. 7 | 8 | Rolling hashes have to be used for maintaining the positions of n-byte 9 | sequences in the dictionary buffer. 10 | 11 | The package provides currently the Rabin-Karp rolling hash and a Cyclic 12 | Polynomial hash. Both support the Hashes method to be used with an interface. 13 | */ 14 | package hash 15 | -------------------------------------------------------------------------------- /vendor/github.com/ulikunitz/xz/internal/hash/roller.go: -------------------------------------------------------------------------------- 1 | // Copyright 2014-2022 Ulrich Kunitz. All rights reserved. 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 hash 6 | 7 | // Roller provides an interface for rolling hashes. The hash value will become 8 | // valid after hash has been called Len times. 9 | type Roller interface { 10 | Len() int 11 | RollByte(x byte) uint64 12 | } 13 | 14 | // Hashes computes all hash values for the array p. Note that the state of the 15 | // roller is changed. 16 | func Hashes(r Roller, p []byte) []uint64 { 17 | n := r.Len() 18 | if len(p) < n { 19 | return nil 20 | } 21 | h := make([]uint64, len(p)-n+1) 22 | for i := 0; i < n-1; i++ { 23 | r.RollByte(p[i]) 24 | } 25 | for i := range h { 26 | h[i] = r.RollByte(p[i+n-1]) 27 | } 28 | return h 29 | } 30 | -------------------------------------------------------------------------------- /vendor/github.com/ulikunitz/xz/lzma/breader.go: -------------------------------------------------------------------------------- 1 | // Copyright 2014-2022 Ulrich Kunitz. All rights reserved. 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 lzma 6 | 7 | import ( 8 | "errors" 9 | "io" 10 | ) 11 | 12 | // breader provides the ReadByte function for a Reader. It doesn't read 13 | // more data from the reader than absolutely necessary. 14 | type breader struct { 15 | io.Reader 16 | // helper slice to save allocations 17 | p []byte 18 | } 19 | 20 | // ByteReader converts an io.Reader into an io.ByteReader. 21 | func ByteReader(r io.Reader) io.ByteReader { 22 | br, ok := r.(io.ByteReader) 23 | if !ok { 24 | return &breader{r, make([]byte, 1)} 25 | } 26 | return br 27 | } 28 | 29 | // ReadByte read byte function. 30 | func (r *breader) ReadByte() (c byte, err error) { 31 | n, err := r.Reader.Read(r.p) 32 | if n < 1 { 33 | if err == nil { 34 | err = errors.New("breader.ReadByte: no data") 35 | } 36 | return 0, err 37 | } 38 | return r.p[0], nil 39 | } 40 | -------------------------------------------------------------------------------- /vendor/github.com/ulikunitz/xz/lzma/bytewriter.go: -------------------------------------------------------------------------------- 1 | // Copyright 2014-2022 Ulrich Kunitz. All rights reserved. 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 lzma 6 | 7 | import ( 8 | "errors" 9 | "io" 10 | ) 11 | 12 | // ErrLimit indicates that the limit of the LimitedByteWriter has been 13 | // reached. 14 | var ErrLimit = errors.New("limit reached") 15 | 16 | // LimitedByteWriter provides a byte writer that can be written until a 17 | // limit is reached. The field N provides the number of remaining 18 | // bytes. 19 | type LimitedByteWriter struct { 20 | BW io.ByteWriter 21 | N int64 22 | } 23 | 24 | // WriteByte writes a single byte to the limited byte writer. It returns 25 | // ErrLimit if the limit has been reached. If the byte is successfully 26 | // written the field N of the LimitedByteWriter will be decremented by 27 | // one. 28 | func (l *LimitedByteWriter) WriteByte(c byte) error { 29 | if l.N <= 0 { 30 | return ErrLimit 31 | } 32 | if err := l.BW.WriteByte(c); err != nil { 33 | return err 34 | } 35 | l.N-- 36 | return nil 37 | } 38 | -------------------------------------------------------------------------------- /vendor/github.com/ulikunitz/xz/lzma/fox.lzma: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crazy-max/geoip-updater/6df2dc8dfb40c53617fb83be94b6a80041002daf/vendor/github.com/ulikunitz/xz/lzma/fox.lzma -------------------------------------------------------------------------------- /vendor/github.com/ulikunitz/xz/make-docs: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | set -x 4 | pandoc -t html5 -f markdown -s --css=doc/md.css -o README.html README.md 5 | pandoc -t html5 -f markdown -s --css=doc/md.css -o TODO.html TODO.md 6 | -------------------------------------------------------------------------------- /vendor/github.com/ulikunitz/xz/none-check.go: -------------------------------------------------------------------------------- 1 | // Copyright 2014-2022 Ulrich Kunitz. All rights reserved. 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 xz 6 | 7 | import "hash" 8 | 9 | type noneHash struct{} 10 | 11 | func (h noneHash) Write(p []byte) (n int, err error) { return len(p), nil } 12 | 13 | func (h noneHash) Sum(b []byte) []byte { return b } 14 | 15 | func (h noneHash) Reset() {} 16 | 17 | func (h noneHash) Size() int { return 0 } 18 | 19 | func (h noneHash) BlockSize() int { return 0 } 20 | 21 | func newNoneHash() hash.Hash { 22 | return &noneHash{} 23 | } 24 | -------------------------------------------------------------------------------- /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/readerutil/countingreader.go: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2011 The Go4 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 readerutil 18 | 19 | import "io" 20 | 21 | // CountingReader wraps a Reader, incrementing N by the number of 22 | // bytes read. No locking is performed. 23 | type CountingReader struct { 24 | Reader io.Reader 25 | N *int64 26 | } 27 | 28 | func (cr CountingReader) Read(p []byte) (n int, err error) { 29 | n, err = cr.Reader.Read(p) 30 | *cr.N += int64(n) 31 | return 32 | } 33 | -------------------------------------------------------------------------------- /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/sys/unix/.gitignore: -------------------------------------------------------------------------------- 1 | _obj/ 2 | unix.test 3 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/aliases.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos 6 | 7 | package unix 8 | 9 | import "syscall" 10 | 11 | type Signal = syscall.Signal 12 | type Errno = syscall.Errno 13 | type SysProcAttr = syscall.SysProcAttr 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_aix_ppc64.s: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build gc 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System calls for ppc64, AIX are implemented in runtime/syscall_aix.go 11 | // 12 | 13 | TEXT ·syscall6(SB),NOSPLIT,$0-88 14 | JMP syscall·syscall6(SB) 15 | 16 | TEXT ·rawSyscall6(SB),NOSPLIT,$0-88 17 | JMP syscall·rawSyscall6(SB) 18 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_bsd_386.s: -------------------------------------------------------------------------------- 1 | // Copyright 2021 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build (freebsd || netbsd || openbsd) && gc 6 | 7 | #include "textflag.h" 8 | 9 | // System call support for 386 BSD 10 | 11 | // Just jump to package syscall's implementation for all these functions. 12 | // The runtime may know about them. 13 | 14 | TEXT ·Syscall(SB),NOSPLIT,$0-28 15 | JMP syscall·Syscall(SB) 16 | 17 | TEXT ·Syscall6(SB),NOSPLIT,$0-40 18 | JMP syscall·Syscall6(SB) 19 | 20 | TEXT ·Syscall9(SB),NOSPLIT,$0-52 21 | JMP syscall·Syscall9(SB) 22 | 23 | TEXT ·RawSyscall(SB),NOSPLIT,$0-28 24 | JMP syscall·RawSyscall(SB) 25 | 26 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-40 27 | JMP syscall·RawSyscall6(SB) 28 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_bsd_amd64.s: -------------------------------------------------------------------------------- 1 | // Copyright 2021 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build (darwin || dragonfly || freebsd || netbsd || openbsd) && gc 6 | 7 | #include "textflag.h" 8 | 9 | // System call support for AMD64 BSD 10 | 11 | // Just jump to package syscall's implementation for all these functions. 12 | // The runtime may know about them. 13 | 14 | TEXT ·Syscall(SB),NOSPLIT,$0-56 15 | JMP syscall·Syscall(SB) 16 | 17 | TEXT ·Syscall6(SB),NOSPLIT,$0-80 18 | JMP syscall·Syscall6(SB) 19 | 20 | TEXT ·Syscall9(SB),NOSPLIT,$0-104 21 | JMP syscall·Syscall9(SB) 22 | 23 | TEXT ·RawSyscall(SB),NOSPLIT,$0-56 24 | JMP syscall·RawSyscall(SB) 25 | 26 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-80 27 | JMP syscall·RawSyscall6(SB) 28 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_bsd_arm.s: -------------------------------------------------------------------------------- 1 | // Copyright 2021 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build (freebsd || netbsd || openbsd) && gc 6 | 7 | #include "textflag.h" 8 | 9 | // System call support for ARM BSD 10 | 11 | // Just jump to package syscall's implementation for all these functions. 12 | // The runtime may know about them. 13 | 14 | TEXT ·Syscall(SB),NOSPLIT,$0-28 15 | B syscall·Syscall(SB) 16 | 17 | TEXT ·Syscall6(SB),NOSPLIT,$0-40 18 | B syscall·Syscall6(SB) 19 | 20 | TEXT ·Syscall9(SB),NOSPLIT,$0-52 21 | B syscall·Syscall9(SB) 22 | 23 | TEXT ·RawSyscall(SB),NOSPLIT,$0-28 24 | B syscall·RawSyscall(SB) 25 | 26 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-40 27 | B syscall·RawSyscall6(SB) 28 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_bsd_arm64.s: -------------------------------------------------------------------------------- 1 | // Copyright 2021 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build (darwin || freebsd || netbsd || openbsd) && gc 6 | 7 | #include "textflag.h" 8 | 9 | // System call support for ARM64 BSD 10 | 11 | // Just jump to package syscall's implementation for all these functions. 12 | // The runtime may know about them. 13 | 14 | TEXT ·Syscall(SB),NOSPLIT,$0-56 15 | JMP syscall·Syscall(SB) 16 | 17 | TEXT ·Syscall6(SB),NOSPLIT,$0-80 18 | JMP syscall·Syscall6(SB) 19 | 20 | TEXT ·Syscall9(SB),NOSPLIT,$0-104 21 | JMP syscall·Syscall9(SB) 22 | 23 | TEXT ·RawSyscall(SB),NOSPLIT,$0-56 24 | JMP syscall·RawSyscall(SB) 25 | 26 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-80 27 | JMP syscall·RawSyscall6(SB) 28 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_bsd_ppc64.s: -------------------------------------------------------------------------------- 1 | // Copyright 2022 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build (darwin || freebsd || netbsd || openbsd) && gc 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System call support for ppc64, BSD 11 | // 12 | 13 | // Just jump to package syscall's implementation for all these functions. 14 | // The runtime may know about them. 15 | 16 | TEXT ·Syscall(SB),NOSPLIT,$0-56 17 | JMP syscall·Syscall(SB) 18 | 19 | TEXT ·Syscall6(SB),NOSPLIT,$0-80 20 | JMP syscall·Syscall6(SB) 21 | 22 | TEXT ·Syscall9(SB),NOSPLIT,$0-104 23 | JMP syscall·Syscall9(SB) 24 | 25 | TEXT ·RawSyscall(SB),NOSPLIT,$0-56 26 | JMP syscall·RawSyscall(SB) 27 | 28 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-80 29 | JMP syscall·RawSyscall6(SB) 30 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_bsd_riscv64.s: -------------------------------------------------------------------------------- 1 | // Copyright 2021 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build (darwin || freebsd || netbsd || openbsd) && gc 6 | 7 | #include "textflag.h" 8 | 9 | // System call support for RISCV64 BSD 10 | 11 | // Just jump to package syscall's implementation for all these functions. 12 | // The runtime may know about them. 13 | 14 | TEXT ·Syscall(SB),NOSPLIT,$0-56 15 | JMP syscall·Syscall(SB) 16 | 17 | TEXT ·Syscall6(SB),NOSPLIT,$0-80 18 | JMP syscall·Syscall6(SB) 19 | 20 | TEXT ·Syscall9(SB),NOSPLIT,$0-104 21 | JMP syscall·Syscall9(SB) 22 | 23 | TEXT ·RawSyscall(SB),NOSPLIT,$0-56 24 | JMP syscall·RawSyscall(SB) 25 | 26 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-80 27 | JMP syscall·RawSyscall6(SB) 28 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s: -------------------------------------------------------------------------------- 1 | // Copyright 2014 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build linux && (ppc64 || ppc64le) && gc 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System calls for ppc64, Linux 11 | // 12 | 13 | // Just jump to package syscall's implementation for all these functions. 14 | // The runtime may know about them. 15 | 16 | TEXT ·SyscallNoError(SB),NOSPLIT,$0-48 17 | BL runtime·entersyscall(SB) 18 | MOVD a1+8(FP), R3 19 | MOVD a2+16(FP), R4 20 | MOVD a3+24(FP), R5 21 | MOVD R0, R6 22 | MOVD R0, R7 23 | MOVD R0, R8 24 | MOVD trap+0(FP), R9 // syscall entry 25 | SYSCALL R9 26 | MOVD R3, r1+32(FP) 27 | MOVD R4, r2+40(FP) 28 | BL runtime·exitsyscall(SB) 29 | RET 30 | 31 | TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-48 32 | MOVD a1+8(FP), R3 33 | MOVD a2+16(FP), R4 34 | MOVD a3+24(FP), R5 35 | MOVD R0, R6 36 | MOVD R0, R7 37 | MOVD R0, R8 38 | MOVD trap+0(FP), R9 // syscall entry 39 | SYSCALL R9 40 | MOVD R3, r1+32(FP) 41 | MOVD R4, r2+40(FP) 42 | RET 43 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_openbsd_mips64.s: -------------------------------------------------------------------------------- 1 | // Copyright 2019 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build gc 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System call support for mips64, OpenBSD 11 | // 12 | 13 | // Just jump to package syscall's implementation for all these functions. 14 | // The runtime may know about them. 15 | 16 | TEXT ·Syscall(SB),NOSPLIT,$0-56 17 | JMP syscall·Syscall(SB) 18 | 19 | TEXT ·Syscall6(SB),NOSPLIT,$0-80 20 | JMP syscall·Syscall6(SB) 21 | 22 | TEXT ·Syscall9(SB),NOSPLIT,$0-104 23 | JMP syscall·Syscall9(SB) 24 | 25 | TEXT ·RawSyscall(SB),NOSPLIT,$0-56 26 | JMP syscall·RawSyscall(SB) 27 | 28 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-80 29 | JMP syscall·RawSyscall6(SB) 30 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_solaris_amd64.s: -------------------------------------------------------------------------------- 1 | // Copyright 2014 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build gc 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System calls for amd64, Solaris are implemented in runtime/syscall_solaris.go 11 | // 12 | 13 | TEXT ·sysvicall6(SB),NOSPLIT,$0-88 14 | JMP syscall·sysvicall6(SB) 15 | 16 | TEXT ·rawSysvicall6(SB),NOSPLIT,$0-88 17 | JMP syscall·rawSysvicall6(SB) 18 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/bluetooth_linux.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // Bluetooth sockets and messages 6 | 7 | package unix 8 | 9 | // Bluetooth Protocols 10 | const ( 11 | BTPROTO_L2CAP = 0 12 | BTPROTO_HCI = 1 13 | BTPROTO_SCO = 2 14 | BTPROTO_RFCOMM = 3 15 | BTPROTO_BNEP = 4 16 | BTPROTO_CMTP = 5 17 | BTPROTO_HIDP = 6 18 | BTPROTO_AVDTP = 7 19 | ) 20 | 21 | const ( 22 | HCI_CHANNEL_RAW = 0 23 | HCI_CHANNEL_USER = 1 24 | HCI_CHANNEL_MONITOR = 2 25 | HCI_CHANNEL_CONTROL = 3 26 | HCI_CHANNEL_LOGGING = 4 27 | ) 28 | 29 | // Socketoption Level 30 | const ( 31 | SOL_BLUETOOTH = 0x112 32 | SOL_HCI = 0x0 33 | SOL_L2CAP = 0x6 34 | SOL_RFCOMM = 0x12 35 | SOL_SCO = 0x11 36 | ) 37 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/constants.go: -------------------------------------------------------------------------------- 1 | // Copyright 2015 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos 6 | 7 | package unix 8 | 9 | const ( 10 | R_OK = 0x4 11 | W_OK = 0x2 12 | X_OK = 0x1 13 | ) 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/dev_aix_ppc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build aix && ppc 6 | 7 | // Functions to access/create device major and minor numbers matching the 8 | // encoding used by AIX. 9 | 10 | package unix 11 | 12 | // Major returns the major component of a Linux device number. 13 | func Major(dev uint64) uint32 { 14 | return uint32((dev >> 16) & 0xffff) 15 | } 16 | 17 | // Minor returns the minor component of a Linux device number. 18 | func Minor(dev uint64) uint32 { 19 | return uint32(dev & 0xffff) 20 | } 21 | 22 | // Mkdev returns a Linux device number generated from the given major and minor 23 | // components. 24 | func Mkdev(major, minor uint32) uint64 { 25 | return uint64(((major) << 16) | (minor)) 26 | } 27 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/dev_aix_ppc64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build aix && ppc64 6 | 7 | // Functions to access/create device major and minor numbers matching the 8 | // encoding used AIX. 9 | 10 | package unix 11 | 12 | // Major returns the major component of a Linux device number. 13 | func Major(dev uint64) uint32 { 14 | return uint32((dev & 0x3fffffff00000000) >> 32) 15 | } 16 | 17 | // Minor returns the minor component of a Linux device number. 18 | func Minor(dev uint64) uint32 { 19 | return uint32((dev & 0x00000000ffffffff) >> 0) 20 | } 21 | 22 | // Mkdev returns a Linux device number generated from the given major and minor 23 | // components. 24 | func Mkdev(major, minor uint32) uint64 { 25 | var DEVNO64 uint64 26 | DEVNO64 = 0x8000000000000000 27 | return ((uint64(major) << 32) | (uint64(minor) & 0x00000000FFFFFFFF) | DEVNO64) 28 | } 29 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/dev_darwin.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // Functions to access/create device major and minor numbers matching the 6 | // encoding used in Darwin's sys/types.h header. 7 | 8 | package unix 9 | 10 | // Major returns the major component of a Darwin device number. 11 | func Major(dev uint64) uint32 { 12 | return uint32((dev >> 24) & 0xff) 13 | } 14 | 15 | // Minor returns the minor component of a Darwin device number. 16 | func Minor(dev uint64) uint32 { 17 | return uint32(dev & 0xffffff) 18 | } 19 | 20 | // Mkdev returns a Darwin device number generated from the given major and minor 21 | // components. 22 | func Mkdev(major, minor uint32) uint64 { 23 | return (uint64(major) << 24) | uint64(minor) 24 | } 25 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/dev_dragonfly.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // Functions to access/create device major and minor numbers matching the 6 | // encoding used in Dragonfly's sys/types.h header. 7 | // 8 | // The information below is extracted and adapted from sys/types.h: 9 | // 10 | // Minor gives a cookie instead of an index since in order to avoid changing the 11 | // meanings of bits 0-15 or wasting time and space shifting bits 16-31 for 12 | // devices that don't use them. 13 | 14 | package unix 15 | 16 | // Major returns the major component of a DragonFlyBSD device number. 17 | func Major(dev uint64) uint32 { 18 | return uint32((dev >> 8) & 0xff) 19 | } 20 | 21 | // Minor returns the minor component of a DragonFlyBSD device number. 22 | func Minor(dev uint64) uint32 { 23 | return uint32(dev & 0xffff00ff) 24 | } 25 | 26 | // Mkdev returns a DragonFlyBSD device number generated from the given major and 27 | // minor components. 28 | func Mkdev(major, minor uint32) uint64 { 29 | return (uint64(major) << 8) | uint64(minor) 30 | } 31 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/dev_freebsd.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // Functions to access/create device major and minor numbers matching the 6 | // encoding used in FreeBSD's sys/types.h header. 7 | // 8 | // The information below is extracted and adapted from sys/types.h: 9 | // 10 | // Minor gives a cookie instead of an index since in order to avoid changing the 11 | // meanings of bits 0-15 or wasting time and space shifting bits 16-31 for 12 | // devices that don't use them. 13 | 14 | package unix 15 | 16 | // Major returns the major component of a FreeBSD device number. 17 | func Major(dev uint64) uint32 { 18 | return uint32((dev >> 8) & 0xff) 19 | } 20 | 21 | // Minor returns the minor component of a FreeBSD device number. 22 | func Minor(dev uint64) uint32 { 23 | return uint32(dev & 0xffff00ff) 24 | } 25 | 26 | // Mkdev returns a FreeBSD device number generated from the given major and 27 | // minor components. 28 | func Mkdev(major, minor uint32) uint64 { 29 | return (uint64(major) << 8) | uint64(minor) 30 | } 31 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/dev_netbsd.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // Functions to access/create device major and minor numbers matching the 6 | // encoding used in NetBSD's sys/types.h header. 7 | 8 | package unix 9 | 10 | // Major returns the major component of a NetBSD device number. 11 | func Major(dev uint64) uint32 { 12 | return uint32((dev & 0x000fff00) >> 8) 13 | } 14 | 15 | // Minor returns the minor component of a NetBSD device number. 16 | func Minor(dev uint64) uint32 { 17 | minor := uint32((dev & 0x000000ff) >> 0) 18 | minor |= uint32((dev & 0xfff00000) >> 12) 19 | return minor 20 | } 21 | 22 | // Mkdev returns a NetBSD device number generated from the given major and minor 23 | // components. 24 | func Mkdev(major, minor uint32) uint64 { 25 | dev := (uint64(major) << 8) & 0x000fff00 26 | dev |= (uint64(minor) << 12) & 0xfff00000 27 | dev |= (uint64(minor) << 0) & 0x000000ff 28 | return dev 29 | } 30 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/dev_openbsd.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // Functions to access/create device major and minor numbers matching the 6 | // encoding used in OpenBSD's sys/types.h header. 7 | 8 | package unix 9 | 10 | // Major returns the major component of an OpenBSD device number. 11 | func Major(dev uint64) uint32 { 12 | return uint32((dev & 0x0000ff00) >> 8) 13 | } 14 | 15 | // Minor returns the minor component of an OpenBSD device number. 16 | func Minor(dev uint64) uint32 { 17 | minor := uint32((dev & 0x000000ff) >> 0) 18 | minor |= uint32((dev & 0xffff0000) >> 8) 19 | return minor 20 | } 21 | 22 | // Mkdev returns an OpenBSD device number generated from the given major and minor 23 | // components. 24 | func Mkdev(major, minor uint32) uint64 { 25 | dev := (uint64(major) << 8) & 0x0000ff00 26 | dev |= (uint64(minor) << 8) & 0xffff0000 27 | dev |= (uint64(minor) << 0) & 0x000000ff 28 | return dev 29 | } 30 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/dev_zos.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build zos && s390x 6 | 7 | // Functions to access/create device major and minor numbers matching the 8 | // encoding used by z/OS. 9 | // 10 | // The information below is extracted and adapted from macros. 11 | 12 | package unix 13 | 14 | // Major returns the major component of a z/OS device number. 15 | func Major(dev uint64) uint32 { 16 | return uint32((dev >> 16) & 0x0000FFFF) 17 | } 18 | 19 | // Minor returns the minor component of a z/OS device number. 20 | func Minor(dev uint64) uint32 { 21 | return uint32(dev & 0x0000FFFF) 22 | } 23 | 24 | // Mkdev returns a z/OS device number generated from the given major and minor 25 | // components. 26 | func Mkdev(major, minor uint32) uint64 { 27 | return (uint64(major) << 16) | uint64(minor) 28 | } 29 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/endian_big.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | // 5 | //go:build armbe || arm64be || m68k || mips || mips64 || mips64p32 || ppc || ppc64 || s390 || s390x || shbe || sparc || sparc64 6 | 7 | package unix 8 | 9 | const isBigEndian = true 10 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/endian_little.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | // 5 | //go:build 386 || amd64 || amd64p32 || alpha || arm || arm64 || loong64 || mipsle || mips64le || mips64p32le || nios2 || ppc64le || riscv || riscv64 || sh 6 | 7 | package unix 8 | 9 | const isBigEndian = false 10 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/env_unix.go: -------------------------------------------------------------------------------- 1 | // Copyright 2010 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos 6 | 7 | // Unix environment variables. 8 | 9 | package unix 10 | 11 | import "syscall" 12 | 13 | func Getenv(key string) (value string, found bool) { 14 | return syscall.Getenv(key) 15 | } 16 | 17 | func Setenv(key, value string) error { 18 | return syscall.Setenv(key, value) 19 | } 20 | 21 | func Clearenv() { 22 | syscall.Clearenv() 23 | } 24 | 25 | func Environ() []string { 26 | return syscall.Environ() 27 | } 28 | 29 | func Unsetenv(key string) error { 30 | return syscall.Unsetenv(key) 31 | } 32 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/fcntl_darwin.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package unix 6 | 7 | import "unsafe" 8 | 9 | // FcntlInt performs a fcntl syscall on fd with the provided command and argument. 10 | func FcntlInt(fd uintptr, cmd, arg int) (int, error) { 11 | return fcntl(int(fd), cmd, arg) 12 | } 13 | 14 | // FcntlFlock performs a fcntl syscall for the F_GETLK, F_SETLK or F_SETLKW command. 15 | func FcntlFlock(fd uintptr, cmd int, lk *Flock_t) error { 16 | _, err := fcntl(int(fd), cmd, int(uintptr(unsafe.Pointer(lk)))) 17 | return err 18 | } 19 | 20 | // FcntlFstore performs a fcntl syscall for the F_PREALLOCATE command. 21 | func FcntlFstore(fd uintptr, cmd int, fstore *Fstore_t) error { 22 | _, err := fcntl(int(fd), cmd, int(uintptr(unsafe.Pointer(fstore)))) 23 | return err 24 | } 25 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/fcntl_linux_32bit.go: -------------------------------------------------------------------------------- 1 | // Copyright 2014 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build (linux && 386) || (linux && arm) || (linux && mips) || (linux && mipsle) || (linux && ppc) 6 | 7 | package unix 8 | 9 | func init() { 10 | // On 32-bit Linux systems, the fcntl syscall that matches Go's 11 | // Flock_t type is SYS_FCNTL64, not SYS_FCNTL. 12 | fcntl64Syscall = SYS_FCNTL64 13 | } 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/fdset.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos 6 | 7 | package unix 8 | 9 | // Set adds fd to the set fds. 10 | func (fds *FdSet) Set(fd int) { 11 | fds.Bits[fd/NFDBITS] |= (1 << (uintptr(fd) % NFDBITS)) 12 | } 13 | 14 | // Clear removes fd from the set fds. 15 | func (fds *FdSet) Clear(fd int) { 16 | fds.Bits[fd/NFDBITS] &^= (1 << (uintptr(fd) % NFDBITS)) 17 | } 18 | 19 | // IsSet returns whether fd is in the set fds. 20 | func (fds *FdSet) IsSet(fd int) bool { 21 | return fds.Bits[fd/NFDBITS]&(1<<(uintptr(fd)%NFDBITS)) != 0 22 | } 23 | 24 | // Zero clears the set fds. 25 | func (fds *FdSet) Zero() { 26 | for i := range fds.Bits { 27 | fds.Bits[i] = 0 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2015 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build gccgo && linux && amd64 6 | 7 | package unix 8 | 9 | import "syscall" 10 | 11 | //extern gettimeofday 12 | func realGettimeofday(*Timeval, *byte) int32 13 | 14 | func gettimeofday(tv *Timeval) (err syscall.Errno) { 15 | r := realGettimeofday(tv, nil) 16 | if r < 0 { 17 | return syscall.GetErrno() 18 | } 19 | return 0 20 | } 21 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/mmap_nomremap.go: -------------------------------------------------------------------------------- 1 | // Copyright 2023 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build aix || darwin || dragonfly || freebsd || openbsd || solaris || zos 6 | 7 | package unix 8 | 9 | var mapper = &mmapper{ 10 | active: make(map[*byte][]byte), 11 | mmap: mmap, 12 | munmap: munmap, 13 | } 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/pagesize_unix.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos 6 | 7 | // For Unix, get the pagesize from the runtime. 8 | 9 | package unix 10 | 11 | import "syscall" 12 | 13 | func Getpagesize() int { 14 | return syscall.Getpagesize() 15 | } 16 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/ptrace_darwin.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build darwin && !ios 6 | 7 | package unix 8 | 9 | func ptrace(request int, pid int, addr uintptr, data uintptr) error { 10 | return ptrace1(request, pid, addr, data) 11 | } 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/ptrace_ios.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build ios 6 | 7 | package unix 8 | 9 | func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) { 10 | return ENOTSUP 11 | } 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/race.go: -------------------------------------------------------------------------------- 1 | // Copyright 2012 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build (darwin && race) || (linux && race) || (freebsd && race) 6 | 7 | package unix 8 | 9 | import ( 10 | "runtime" 11 | "unsafe" 12 | ) 13 | 14 | const raceenabled = true 15 | 16 | func raceAcquire(addr unsafe.Pointer) { 17 | runtime.RaceAcquire(addr) 18 | } 19 | 20 | func raceReleaseMerge(addr unsafe.Pointer) { 21 | runtime.RaceReleaseMerge(addr) 22 | } 23 | 24 | func raceReadRange(addr unsafe.Pointer, len int) { 25 | runtime.RaceReadRange(addr, len) 26 | } 27 | 28 | func raceWriteRange(addr unsafe.Pointer, len int) { 29 | runtime.RaceWriteRange(addr, len) 30 | } 31 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/race0.go: -------------------------------------------------------------------------------- 1 | // Copyright 2012 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build aix || (darwin && !race) || (linux && !race) || (freebsd && !race) || netbsd || openbsd || solaris || dragonfly || zos 6 | 7 | package unix 8 | 9 | import ( 10 | "unsafe" 11 | ) 12 | 13 | const raceenabled = false 14 | 15 | func raceAcquire(addr unsafe.Pointer) { 16 | } 17 | 18 | func raceReleaseMerge(addr unsafe.Pointer) { 19 | } 20 | 21 | func raceReadRange(addr unsafe.Pointer, len int) { 22 | } 23 | 24 | func raceWriteRange(addr unsafe.Pointer, len int) { 25 | } 26 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/readdirent_getdents.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build aix || dragonfly || freebsd || linux || netbsd || openbsd 6 | 7 | package unix 8 | 9 | // ReadDirent reads directory entries from fd and writes them into buf. 10 | func ReadDirent(fd int, buf []byte) (n int, err error) { 11 | return Getdents(fd, buf) 12 | } 13 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/readdirent_getdirentries.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build darwin || zos 6 | 7 | package unix 8 | 9 | import "unsafe" 10 | 11 | // ReadDirent reads directory entries from fd and writes them into buf. 12 | func ReadDirent(fd int, buf []byte) (n int, err error) { 13 | // Final argument is (basep *uintptr) and the syscall doesn't take nil. 14 | // 64 bits should be enough. (32 bits isn't even on 386). Since the 15 | // actual system call is getdirentries64, 64 is a good guess. 16 | // TODO(rsc): Can we use a single global basep for all calls? 17 | var base = (*uintptr)(unsafe.Pointer(new(uint64))) 18 | return Getdirentries(fd, buf, base) 19 | } 20 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/sockcmsg_dragonfly.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package unix 6 | 7 | // Round the length of a raw sockaddr up to align it properly. 8 | func cmsgAlignOf(salen int) int { 9 | salign := SizeofPtr 10 | if SizeofPtr == 8 && !supportsABI(_dragonflyABIChangeVersion) { 11 | // 64-bit Dragonfly before the September 2019 ABI changes still requires 12 | // 32-bit aligned access to network subsystem. 13 | salign = 4 14 | } 15 | return (salen + salign - 1) & ^(salign - 1) 16 | } 17 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_hurd.go: -------------------------------------------------------------------------------- 1 | // Copyright 2022 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build hurd 6 | 7 | package unix 8 | 9 | /* 10 | #include 11 | int ioctl(int, unsigned long int, uintptr_t); 12 | */ 13 | import "C" 14 | import "unsafe" 15 | 16 | func ioctl(fd int, req uint, arg uintptr) (err error) { 17 | r0, er := C.ioctl(C.int(fd), C.ulong(req), C.uintptr_t(arg)) 18 | if r0 == -1 && er != nil { 19 | err = er 20 | } 21 | return 22 | } 23 | 24 | func ioctlPtr(fd int, req uint, arg unsafe.Pointer) (err error) { 25 | r0, er := C.ioctl(C.int(fd), C.ulong(req), C.uintptr_t(uintptr(arg))) 26 | if r0 == -1 && er != nil { 27 | err = er 28 | } 29 | return 30 | } 31 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_hurd_386.go: -------------------------------------------------------------------------------- 1 | // Copyright 2022 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build 386 && hurd 6 | 7 | package unix 8 | 9 | const ( 10 | TIOCGETA = 0x62251713 11 | ) 12 | 13 | type Winsize struct { 14 | Row uint16 15 | Col uint16 16 | Xpixel uint16 17 | Ypixel uint16 18 | } 19 | 20 | type Termios struct { 21 | Iflag uint32 22 | Oflag uint32 23 | Cflag uint32 24 | Lflag uint32 25 | Cc [20]uint8 26 | Ispeed int32 27 | Ospeed int32 28 | } 29 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_linux_alarm.go: -------------------------------------------------------------------------------- 1 | // Copyright 2022 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build linux && (386 || amd64 || mips || mipsle || mips64 || mipsle || ppc64 || ppc64le || ppc || s390x || sparc64) 6 | 7 | package unix 8 | 9 | // SYS_ALARM is not defined on arm or riscv, but is available for other GOARCH 10 | // values. 11 | 12 | //sys Alarm(seconds uint) (remaining uint, err error) 13 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_linux_amd64_gc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build amd64 && linux && gc 6 | 7 | package unix 8 | 9 | import "syscall" 10 | 11 | //go:noescape 12 | func gettimeofday(tv *Timeval) (err syscall.Errno) 13 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_linux_gc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build linux && gc 6 | 7 | package unix 8 | 9 | // SyscallNoError may be used instead of Syscall for syscalls that don't fail. 10 | func SyscallNoError(trap, a1, a2, a3 uintptr) (r1, r2 uintptr) 11 | 12 | // RawSyscallNoError may be used instead of RawSyscall for syscalls that don't 13 | // fail. 14 | func RawSyscallNoError(trap, a1, a2, a3 uintptr) (r1, r2 uintptr) 15 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_linux_gc_386.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build linux && gc && 386 6 | 7 | package unix 8 | 9 | import "syscall" 10 | 11 | // Underlying system call writes to newoffset via pointer. 12 | // Implemented in assembly to avoid allocation. 13 | func seek(fd int, offset int64, whence int) (newoffset int64, err syscall.Errno) 14 | 15 | func socketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (n int, err syscall.Errno) 16 | func rawsocketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (n int, err syscall.Errno) 17 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_linux_gc_arm.go: -------------------------------------------------------------------------------- 1 | // Copyright 2009 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build arm && gc && linux 6 | 7 | package unix 8 | 9 | import "syscall" 10 | 11 | // Underlying system call writes to newoffset via pointer. 12 | // Implemented in assembly to avoid allocation. 13 | func seek(fd int, offset int64, whence int) (newoffset int64, err syscall.Errno) 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build linux && gccgo && 386 6 | 7 | package unix 8 | 9 | import ( 10 | "syscall" 11 | "unsafe" 12 | ) 13 | 14 | func seek(fd int, offset int64, whence int) (int64, syscall.Errno) { 15 | var newoffset int64 16 | offsetLow := uint32(offset & 0xffffffff) 17 | offsetHigh := uint32((offset >> 32) & 0xffffffff) 18 | _, _, err := Syscall6(SYS__LLSEEK, uintptr(fd), uintptr(offsetHigh), uintptr(offsetLow), uintptr(unsafe.Pointer(&newoffset)), uintptr(whence), 0) 19 | return newoffset, err 20 | } 21 | 22 | func socketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (int, syscall.Errno) { 23 | fd, _, err := Syscall(SYS_SOCKETCALL, uintptr(call), uintptr(unsafe.Pointer(&a0)), 0) 24 | return int(fd), err 25 | } 26 | 27 | func rawsocketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (int, syscall.Errno) { 28 | fd, _, err := RawSyscall(SYS_SOCKETCALL, uintptr(call), uintptr(unsafe.Pointer(&a0)), 0) 29 | return int(fd), err 30 | } 31 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build linux && gccgo && arm 6 | 7 | package unix 8 | 9 | import ( 10 | "syscall" 11 | "unsafe" 12 | ) 13 | 14 | func seek(fd int, offset int64, whence int) (int64, syscall.Errno) { 15 | var newoffset int64 16 | offsetLow := uint32(offset & 0xffffffff) 17 | offsetHigh := uint32((offset >> 32) & 0xffffffff) 18 | _, _, err := Syscall6(SYS__LLSEEK, uintptr(fd), uintptr(offsetHigh), uintptr(offsetLow), uintptr(unsafe.Pointer(&newoffset)), uintptr(whence), 0) 19 | return newoffset, err 20 | } 21 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_netbsd_386.go: -------------------------------------------------------------------------------- 1 | // Copyright 2009 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build 386 && netbsd 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: int32(nsec)} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: int32(usec)} 15 | } 16 | 17 | func SetKevent(k *Kevent_t, fd, mode, flags int) { 18 | k.Ident = uint32(fd) 19 | k.Filter = uint32(mode) 20 | k.Flags = uint32(flags) 21 | } 22 | 23 | func (iov *Iovec) SetLen(length int) { 24 | iov.Len = uint32(length) 25 | } 26 | 27 | func (msghdr *Msghdr) SetControllen(length int) { 28 | msghdr.Controllen = uint32(length) 29 | } 30 | 31 | func (msghdr *Msghdr) SetIovlen(length int) { 32 | msghdr.Iovlen = int32(length) 33 | } 34 | 35 | func (cmsg *Cmsghdr) SetLen(length int) { 36 | cmsg.Len = uint32(length) 37 | } 38 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2009 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build amd64 && netbsd 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: nsec} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: int32(usec)} 15 | } 16 | 17 | func SetKevent(k *Kevent_t, fd, mode, flags int) { 18 | k.Ident = uint64(fd) 19 | k.Filter = uint32(mode) 20 | k.Flags = uint32(flags) 21 | } 22 | 23 | func (iov *Iovec) SetLen(length int) { 24 | iov.Len = uint64(length) 25 | } 26 | 27 | func (msghdr *Msghdr) SetControllen(length int) { 28 | msghdr.Controllen = uint32(length) 29 | } 30 | 31 | func (msghdr *Msghdr) SetIovlen(length int) { 32 | msghdr.Iovlen = int32(length) 33 | } 34 | 35 | func (cmsg *Cmsghdr) SetLen(length int) { 36 | cmsg.Len = uint32(length) 37 | } 38 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_netbsd_arm.go: -------------------------------------------------------------------------------- 1 | // Copyright 2013 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build arm && netbsd 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: int32(nsec)} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: int32(usec)} 15 | } 16 | 17 | func SetKevent(k *Kevent_t, fd, mode, flags int) { 18 | k.Ident = uint32(fd) 19 | k.Filter = uint32(mode) 20 | k.Flags = uint32(flags) 21 | } 22 | 23 | func (iov *Iovec) SetLen(length int) { 24 | iov.Len = uint32(length) 25 | } 26 | 27 | func (msghdr *Msghdr) SetControllen(length int) { 28 | msghdr.Controllen = uint32(length) 29 | } 30 | 31 | func (msghdr *Msghdr) SetIovlen(length int) { 32 | msghdr.Iovlen = int32(length) 33 | } 34 | 35 | func (cmsg *Cmsghdr) SetLen(length int) { 36 | cmsg.Len = uint32(length) 37 | } 38 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build arm64 && netbsd 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: nsec} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: int32(usec)} 15 | } 16 | 17 | func SetKevent(k *Kevent_t, fd, mode, flags int) { 18 | k.Ident = uint64(fd) 19 | k.Filter = uint32(mode) 20 | k.Flags = uint32(flags) 21 | } 22 | 23 | func (iov *Iovec) SetLen(length int) { 24 | iov.Len = uint64(length) 25 | } 26 | 27 | func (msghdr *Msghdr) SetControllen(length int) { 28 | msghdr.Controllen = uint32(length) 29 | } 30 | 31 | func (msghdr *Msghdr) SetIovlen(length int) { 32 | msghdr.Iovlen = int32(length) 33 | } 34 | 35 | func (cmsg *Cmsghdr) SetLen(length int) { 36 | cmsg.Len = uint32(length) 37 | } 38 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_openbsd_386.go: -------------------------------------------------------------------------------- 1 | // Copyright 2009 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build 386 && openbsd 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: int32(nsec)} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: int32(usec)} 15 | } 16 | 17 | func SetKevent(k *Kevent_t, fd, mode, flags int) { 18 | k.Ident = uint32(fd) 19 | k.Filter = int16(mode) 20 | k.Flags = uint16(flags) 21 | } 22 | 23 | func (iov *Iovec) SetLen(length int) { 24 | iov.Len = uint32(length) 25 | } 26 | 27 | func (msghdr *Msghdr) SetControllen(length int) { 28 | msghdr.Controllen = uint32(length) 29 | } 30 | 31 | func (msghdr *Msghdr) SetIovlen(length int) { 32 | msghdr.Iovlen = uint32(length) 33 | } 34 | 35 | func (cmsg *Cmsghdr) SetLen(length int) { 36 | cmsg.Len = uint32(length) 37 | } 38 | 39 | // SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions 40 | // of openbsd/386 the syscall is called sysctl instead of __sysctl. 41 | const SYS___SYSCTL = SYS_SYSCTL 42 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2009 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build amd64 && openbsd 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: nsec} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: usec} 15 | } 16 | 17 | func SetKevent(k *Kevent_t, fd, mode, flags int) { 18 | k.Ident = uint64(fd) 19 | k.Filter = int16(mode) 20 | k.Flags = uint16(flags) 21 | } 22 | 23 | func (iov *Iovec) SetLen(length int) { 24 | iov.Len = uint64(length) 25 | } 26 | 27 | func (msghdr *Msghdr) SetControllen(length int) { 28 | msghdr.Controllen = uint32(length) 29 | } 30 | 31 | func (msghdr *Msghdr) SetIovlen(length int) { 32 | msghdr.Iovlen = uint32(length) 33 | } 34 | 35 | func (cmsg *Cmsghdr) SetLen(length int) { 36 | cmsg.Len = uint32(length) 37 | } 38 | 39 | // SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions 40 | // of openbsd/amd64 the syscall is called sysctl instead of __sysctl. 41 | const SYS___SYSCTL = SYS_SYSCTL 42 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_openbsd_arm.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build arm && openbsd 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: int32(nsec)} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: int32(usec)} 15 | } 16 | 17 | func SetKevent(k *Kevent_t, fd, mode, flags int) { 18 | k.Ident = uint32(fd) 19 | k.Filter = int16(mode) 20 | k.Flags = uint16(flags) 21 | } 22 | 23 | func (iov *Iovec) SetLen(length int) { 24 | iov.Len = uint32(length) 25 | } 26 | 27 | func (msghdr *Msghdr) SetControllen(length int) { 28 | msghdr.Controllen = uint32(length) 29 | } 30 | 31 | func (msghdr *Msghdr) SetIovlen(length int) { 32 | msghdr.Iovlen = uint32(length) 33 | } 34 | 35 | func (cmsg *Cmsghdr) SetLen(length int) { 36 | cmsg.Len = uint32(length) 37 | } 38 | 39 | // SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions 40 | // of openbsd/arm the syscall is called sysctl instead of __sysctl. 41 | const SYS___SYSCTL = SYS_SYSCTL 42 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build arm64 && openbsd 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: nsec} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: usec} 15 | } 16 | 17 | func SetKevent(k *Kevent_t, fd, mode, flags int) { 18 | k.Ident = uint64(fd) 19 | k.Filter = int16(mode) 20 | k.Flags = uint16(flags) 21 | } 22 | 23 | func (iov *Iovec) SetLen(length int) { 24 | iov.Len = uint64(length) 25 | } 26 | 27 | func (msghdr *Msghdr) SetControllen(length int) { 28 | msghdr.Controllen = uint32(length) 29 | } 30 | 31 | func (msghdr *Msghdr) SetIovlen(length int) { 32 | msghdr.Iovlen = uint32(length) 33 | } 34 | 35 | func (cmsg *Cmsghdr) SetLen(length int) { 36 | cmsg.Len = uint32(length) 37 | } 38 | 39 | // SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions 40 | // of openbsd/amd64 the syscall is called sysctl instead of __sysctl. 41 | const SYS___SYSCTL = SYS_SYSCTL 42 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_openbsd_mips64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package unix 6 | 7 | func setTimespec(sec, nsec int64) Timespec { 8 | return Timespec{Sec: sec, Nsec: nsec} 9 | } 10 | 11 | func setTimeval(sec, usec int64) Timeval { 12 | return Timeval{Sec: sec, Usec: usec} 13 | } 14 | 15 | func SetKevent(k *Kevent_t, fd, mode, flags int) { 16 | k.Ident = uint64(fd) 17 | k.Filter = int16(mode) 18 | k.Flags = uint16(flags) 19 | } 20 | 21 | func (iov *Iovec) SetLen(length int) { 22 | iov.Len = uint64(length) 23 | } 24 | 25 | func (msghdr *Msghdr) SetControllen(length int) { 26 | msghdr.Controllen = uint32(length) 27 | } 28 | 29 | func (msghdr *Msghdr) SetIovlen(length int) { 30 | msghdr.Iovlen = uint32(length) 31 | } 32 | 33 | func (cmsg *Cmsghdr) SetLen(length int) { 34 | cmsg.Len = uint32(length) 35 | } 36 | 37 | // SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions 38 | // of OpenBSD the syscall is called sysctl instead of __sysctl. 39 | const SYS___SYSCTL = SYS_SYSCTL 40 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_openbsd_ppc64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build ppc64 && openbsd 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: nsec} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: usec} 15 | } 16 | 17 | func SetKevent(k *Kevent_t, fd, mode, flags int) { 18 | k.Ident = uint64(fd) 19 | k.Filter = int16(mode) 20 | k.Flags = uint16(flags) 21 | } 22 | 23 | func (iov *Iovec) SetLen(length int) { 24 | iov.Len = uint64(length) 25 | } 26 | 27 | func (msghdr *Msghdr) SetControllen(length int) { 28 | msghdr.Controllen = uint32(length) 29 | } 30 | 31 | func (msghdr *Msghdr) SetIovlen(length int) { 32 | msghdr.Iovlen = uint32(length) 33 | } 34 | 35 | func (cmsg *Cmsghdr) SetLen(length int) { 36 | cmsg.Len = uint32(length) 37 | } 38 | 39 | // SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions 40 | // of openbsd/ppc64 the syscall is called sysctl instead of __sysctl. 41 | const SYS___SYSCTL = SYS_SYSCTL 42 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_openbsd_riscv64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build riscv64 && openbsd 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: nsec} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: usec} 15 | } 16 | 17 | func SetKevent(k *Kevent_t, fd, mode, flags int) { 18 | k.Ident = uint64(fd) 19 | k.Filter = int16(mode) 20 | k.Flags = uint16(flags) 21 | } 22 | 23 | func (iov *Iovec) SetLen(length int) { 24 | iov.Len = uint64(length) 25 | } 26 | 27 | func (msghdr *Msghdr) SetControllen(length int) { 28 | msghdr.Controllen = uint32(length) 29 | } 30 | 31 | func (msghdr *Msghdr) SetIovlen(length int) { 32 | msghdr.Iovlen = uint32(length) 33 | } 34 | 35 | func (cmsg *Cmsghdr) SetLen(length int) { 36 | cmsg.Len = uint32(length) 37 | } 38 | 39 | // SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions 40 | // of openbsd/riscv64 the syscall is called sysctl instead of __sysctl. 41 | const SYS___SYSCTL = SYS_SYSCTL 42 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2009 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build amd64 && solaris 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: nsec} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: usec} 15 | } 16 | 17 | func (iov *Iovec) SetLen(length int) { 18 | iov.Len = uint64(length) 19 | } 20 | 21 | func (msghdr *Msghdr) SetIovlen(length int) { 22 | msghdr.Iovlen = int32(length) 23 | } 24 | 25 | func (cmsg *Cmsghdr) SetLen(length int) { 26 | cmsg.Len = uint32(length) 27 | } 28 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_unix_gc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build (darwin || dragonfly || freebsd || (linux && !ppc64 && !ppc64le) || netbsd || openbsd || solaris) && gc 6 | 7 | package unix 8 | 9 | import "syscall" 10 | 11 | func Syscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno) 12 | func Syscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno) 13 | func RawSyscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno) 14 | func RawSyscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno) 15 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_unix_gc_ppc64x.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build linux && (ppc64le || ppc64) && gc 6 | 7 | package unix 8 | 9 | import "syscall" 10 | 11 | func Syscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno) { 12 | return syscall.Syscall(trap, a1, a2, a3) 13 | } 14 | func Syscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno) { 15 | return syscall.Syscall6(trap, a1, a2, a3, a4, a5, a6) 16 | } 17 | func RawSyscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno) { 18 | return syscall.RawSyscall(trap, a1, a2, a3) 19 | } 20 | func RawSyscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno) { 21 | return syscall.RawSyscall6(trap, a1, a2, a3, a4, a5, a6) 22 | } 23 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/sysvshm_linux.go: -------------------------------------------------------------------------------- 1 | // Copyright 2021 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build linux 6 | 7 | package unix 8 | 9 | import "runtime" 10 | 11 | // SysvShmCtl performs control operations on the shared memory segment 12 | // specified by id. 13 | func SysvShmCtl(id, cmd int, desc *SysvShmDesc) (result int, err error) { 14 | if runtime.GOARCH == "arm" || 15 | runtime.GOARCH == "mips64" || runtime.GOARCH == "mips64le" { 16 | cmd |= ipc_64 17 | } 18 | 19 | return shmctl(id, cmd, desc) 20 | } 21 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/sysvshm_unix_other.go: -------------------------------------------------------------------------------- 1 | // Copyright 2021 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build (darwin && !ios) || zos 6 | 7 | package unix 8 | 9 | // SysvShmCtl performs control operations on the shared memory segment 10 | // specified by id. 11 | func SysvShmCtl(id, cmd int, desc *SysvShmDesc) (result int, err error) { 12 | return shmctl(id, cmd, desc) 13 | } 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/vgetrandom_linux.go: -------------------------------------------------------------------------------- 1 | // Copyright 2024 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build linux && go1.24 6 | 7 | package unix 8 | 9 | import _ "unsafe" 10 | 11 | //go:linkname vgetrandom runtime.vgetrandom 12 | //go:noescape 13 | func vgetrandom(p []byte, flags uint32) (ret int, supported bool) 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/vgetrandom_unsupported.go: -------------------------------------------------------------------------------- 1 | // Copyright 2024 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build !linux || !go1.24 6 | 7 | package unix 8 | 9 | func vgetrandom(p []byte, flags uint32) (ret int, supported bool) { 10 | return -1, false 11 | } 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/zptrace_linux_arm64.go: -------------------------------------------------------------------------------- 1 | // Code generated by linux/mkall.go generatePtraceRegSet("arm64"). DO NOT EDIT. 2 | 3 | package unix 4 | 5 | import "unsafe" 6 | 7 | // PtraceGetRegSetArm64 fetches the registers used by arm64 binaries. 8 | func PtraceGetRegSetArm64(pid, addr int, regsout *PtraceRegsArm64) error { 9 | iovec := Iovec{(*byte)(unsafe.Pointer(regsout)), uint64(unsafe.Sizeof(*regsout))} 10 | return ptracePtr(PTRACE_GETREGSET, pid, uintptr(addr), unsafe.Pointer(&iovec)) 11 | } 12 | 13 | // PtraceSetRegSetArm64 sets the registers used by arm64 binaries. 14 | func PtraceSetRegSetArm64(pid, addr int, regs *PtraceRegsArm64) error { 15 | iovec := Iovec{(*byte)(unsafe.Pointer(regs)), uint64(unsafe.Sizeof(*regs))} 16 | return ptracePtr(PTRACE_SETREGSET, pid, uintptr(addr), unsafe.Pointer(&iovec)) 17 | } 18 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/aliases.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build windows 6 | 7 | package windows 8 | 9 | import "syscall" 10 | 11 | type Errno = syscall.Errno 12 | type SysProcAttr = syscall.SysProcAttr 13 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/eventlog.go: -------------------------------------------------------------------------------- 1 | // Copyright 2012 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build windows 6 | 7 | package windows 8 | 9 | const ( 10 | EVENTLOG_SUCCESS = 0 11 | EVENTLOG_ERROR_TYPE = 1 12 | EVENTLOG_WARNING_TYPE = 2 13 | EVENTLOG_INFORMATION_TYPE = 4 14 | EVENTLOG_AUDIT_SUCCESS = 8 15 | EVENTLOG_AUDIT_FAILURE = 16 16 | ) 17 | 18 | //sys RegisterEventSource(uncServerName *uint16, sourceName *uint16) (handle Handle, err error) [failretval==0] = advapi32.RegisterEventSourceW 19 | //sys DeregisterEventSource(handle Handle) (err error) = advapi32.DeregisterEventSource 20 | //sys ReportEvent(log Handle, etype uint16, category uint16, eventId uint32, usrSId uintptr, numStrings uint16, dataSize uint32, strings **uint16, rawData *byte) (err error) = advapi32.ReportEventW 21 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/mksyscall.go: -------------------------------------------------------------------------------- 1 | // Copyright 2009 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build generate 6 | 7 | package windows 8 | 9 | //go:generate go run golang.org/x/sys/windows/mkwinsyscall -output zsyscall_windows.go eventlog.go service.go syscall_windows.go security_windows.go setupapi_windows.go 10 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/race.go: -------------------------------------------------------------------------------- 1 | // Copyright 2012 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build windows && race 6 | 7 | package windows 8 | 9 | import ( 10 | "runtime" 11 | "unsafe" 12 | ) 13 | 14 | const raceenabled = true 15 | 16 | func raceAcquire(addr unsafe.Pointer) { 17 | runtime.RaceAcquire(addr) 18 | } 19 | 20 | func raceReleaseMerge(addr unsafe.Pointer) { 21 | runtime.RaceReleaseMerge(addr) 22 | } 23 | 24 | func raceReadRange(addr unsafe.Pointer, len int) { 25 | runtime.RaceReadRange(addr, len) 26 | } 27 | 28 | func raceWriteRange(addr unsafe.Pointer, len int) { 29 | runtime.RaceWriteRange(addr, len) 30 | } 31 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/race0.go: -------------------------------------------------------------------------------- 1 | // Copyright 2012 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build windows && !race 6 | 7 | package windows 8 | 9 | import ( 10 | "unsafe" 11 | ) 12 | 13 | const raceenabled = false 14 | 15 | func raceAcquire(addr unsafe.Pointer) { 16 | } 17 | 18 | func raceReleaseMerge(addr unsafe.Pointer) { 19 | } 20 | 21 | func raceReadRange(addr unsafe.Pointer, len int) { 22 | } 23 | 24 | func raceWriteRange(addr unsafe.Pointer, len int) { 25 | } 26 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/str.go: -------------------------------------------------------------------------------- 1 | // Copyright 2009 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build windows 6 | 7 | package windows 8 | 9 | func itoa(val int) string { // do it here rather than with fmt to avoid dependency 10 | if val < 0 { 11 | return "-" + itoa(-val) 12 | } 13 | var buf [32]byte // big enough for int64 14 | i := len(buf) - 1 15 | for val >= 10 { 16 | buf[i] = byte(val%10 + '0') 17 | i-- 18 | val /= 10 19 | } 20 | buf[i] = byte(val + '0') 21 | return string(buf[i:]) 22 | } 23 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/types_windows_386.go: -------------------------------------------------------------------------------- 1 | // Copyright 2011 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package windows 6 | 7 | type WSAData struct { 8 | Version uint16 9 | HighVersion uint16 10 | Description [WSADESCRIPTION_LEN + 1]byte 11 | SystemStatus [WSASYS_STATUS_LEN + 1]byte 12 | MaxSockets uint16 13 | MaxUdpDg uint16 14 | VendorInfo *byte 15 | } 16 | 17 | type Servent struct { 18 | Name *byte 19 | Aliases **byte 20 | Port uint16 21 | Proto *byte 22 | } 23 | 24 | type JOBOBJECT_BASIC_LIMIT_INFORMATION struct { 25 | PerProcessUserTimeLimit int64 26 | PerJobUserTimeLimit int64 27 | LimitFlags uint32 28 | MinimumWorkingSetSize uintptr 29 | MaximumWorkingSetSize uintptr 30 | ActiveProcessLimit uint32 31 | Affinity uintptr 32 | PriorityClass uint32 33 | SchedulingClass uint32 34 | _ uint32 // pad to 8 byte boundary 35 | } 36 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/types_windows_amd64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2011 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package windows 6 | 7 | type WSAData struct { 8 | Version uint16 9 | HighVersion uint16 10 | MaxSockets uint16 11 | MaxUdpDg uint16 12 | VendorInfo *byte 13 | Description [WSADESCRIPTION_LEN + 1]byte 14 | SystemStatus [WSASYS_STATUS_LEN + 1]byte 15 | } 16 | 17 | type Servent struct { 18 | Name *byte 19 | Aliases **byte 20 | Proto *byte 21 | Port uint16 22 | } 23 | 24 | type JOBOBJECT_BASIC_LIMIT_INFORMATION struct { 25 | PerProcessUserTimeLimit int64 26 | PerJobUserTimeLimit int64 27 | LimitFlags uint32 28 | MinimumWorkingSetSize uintptr 29 | MaximumWorkingSetSize uintptr 30 | ActiveProcessLimit uint32 31 | Affinity uintptr 32 | PriorityClass uint32 33 | SchedulingClass uint32 34 | } 35 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/types_windows_arm.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package windows 6 | 7 | type WSAData struct { 8 | Version uint16 9 | HighVersion uint16 10 | Description [WSADESCRIPTION_LEN + 1]byte 11 | SystemStatus [WSASYS_STATUS_LEN + 1]byte 12 | MaxSockets uint16 13 | MaxUdpDg uint16 14 | VendorInfo *byte 15 | } 16 | 17 | type Servent struct { 18 | Name *byte 19 | Aliases **byte 20 | Port uint16 21 | Proto *byte 22 | } 23 | 24 | type JOBOBJECT_BASIC_LIMIT_INFORMATION struct { 25 | PerProcessUserTimeLimit int64 26 | PerJobUserTimeLimit int64 27 | LimitFlags uint32 28 | MinimumWorkingSetSize uintptr 29 | MaximumWorkingSetSize uintptr 30 | ActiveProcessLimit uint32 31 | Affinity uintptr 32 | PriorityClass uint32 33 | SchedulingClass uint32 34 | _ uint32 // pad to 8 byte boundary 35 | } 36 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/types_windows_arm64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2011 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package windows 6 | 7 | type WSAData struct { 8 | Version uint16 9 | HighVersion uint16 10 | MaxSockets uint16 11 | MaxUdpDg uint16 12 | VendorInfo *byte 13 | Description [WSADESCRIPTION_LEN + 1]byte 14 | SystemStatus [WSASYS_STATUS_LEN + 1]byte 15 | } 16 | 17 | type Servent struct { 18 | Name *byte 19 | Aliases **byte 20 | Proto *byte 21 | Port uint16 22 | } 23 | 24 | type JOBOBJECT_BASIC_LIMIT_INFORMATION struct { 25 | PerProcessUserTimeLimit int64 26 | PerJobUserTimeLimit int64 27 | LimitFlags uint32 28 | MinimumWorkingSetSize uintptr 29 | MaximumWorkingSetSize uintptr 30 | ActiveProcessLimit uint32 31 | Affinity uintptr 32 | PriorityClass uint32 33 | SchedulingClass uint32 34 | } 35 | -------------------------------------------------------------------------------- /vendor/gopkg.in/yaml.v3/NOTICE: -------------------------------------------------------------------------------- 1 | Copyright 2011-2016 Canonical Ltd. 2 | 3 | Licensed under the Apache License, Version 2.0 (the "License"); 4 | you may not use this file except in compliance with the License. 5 | You may obtain a copy of the License at 6 | 7 | http://www.apache.org/licenses/LICENSE-2.0 8 | 9 | Unless required by applicable law or agreed to in writing, software 10 | distributed under the License is distributed on an "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | See the License for the specific language governing permissions and 13 | limitations under the License. 14 | --------------------------------------------------------------------------------