{"id":21392711,"url":"https://github.com/in-line/source_query_cacher","last_synced_at":"2025-07-13T18:31:29.523Z","repository":{"id":44839737,"uuid":"146661866","full_name":"In-line/source_query_cacher","owner":"In-line","description":"https://developer.valvesoftware.com/wiki/Server_queries queries cacher. Currently supports A2S_INFO and A2S_PLAYER queries.","archived":false,"fork":false,"pushed_at":"2021-07-26T01:16:19.000Z","size":100,"stargazers_count":15,"open_issues_count":16,"forks_count":4,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-04-07T15:54:44.057Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/In-line.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-08-29T21:39:51.000Z","updated_at":"2025-02-07T17:46:00.000Z","dependencies_parsed_at":"2022-09-01T19:11:00.144Z","dependency_job_id":null,"html_url":"https://github.com/In-line/source_query_cacher","commit_stats":null,"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"purl":"pkg:github/In-line/source_query_cacher","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/In-line%2Fsource_query_cacher","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/In-line%2Fsource_query_cacher/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/In-line%2Fsource_query_cacher/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/In-line%2Fsource_query_cacher/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/In-line","download_url":"https://codeload.github.com/In-line/source_query_cacher/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/In-line%2Fsource_query_cacher/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265186648,"owners_count":23724715,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-22T13:42:24.094Z","updated_at":"2025-07-13T18:31:29.193Z","avatar_url":"https://github.com/In-line.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# source_query_cacher [![Build Status](https://travis-ci.org/In-line/source_query_cacher.svg?branch=master)](https://travis-ci.org/In-line/source_query_cacher) [![Build status](https://ci.appveyor.com/api/projects/status/090sue7e0hyspsk6/branch/master?svg=true)](https://ci.appveyor.com/project/In-line/source-query-cacher/branch/master)\n\nWritten in Rust, with love and care using Tokio framework. Should be as fast as hell, or slow as hell. I don't know, but you should try to use it anyway :)\n\nProgram is intended to prevent some types of DoS attacks targeted to `SRCDS`/`HLDS` servers by caching some requests before they even arrive to the server. To function properly it needs iptables rule to intercept incoming packets.\n```\n$ ./target/debug/bin --help\nsource_query_cacher 0.1.X\nAlik Aslanyan \u003ccplusplus256@gmail.com\u003e\n\nUSAGE:\n    bin [OPTIONS] --list \u003clist\u003e...\n\nFLAGS:\n    -h, --help       Prints help information\n    -V, --version    Prints version information\n\nOPTIONS:\n        --challenge-number-expire \u003cchallenge_number_expire\u003e\n            Challenge number expire time in milliseconds. [default: 1000]\n\n    -c, --chunk-size \u003cchunk_size\u003e\n            Number of servers to dispatched on the same thread. [default: 5]\n\n        --client-queue-expire \u003cclient_queue_expire\u003e\n            Client queue expire time in milliseconds. [default: 1000]\n\n        --ignore-unknown-challenge_numbers \u003cignore_unknown_challenge_numbers\u003e\n            Ignore unknown challenge numbers. Some monitorings violate protocol and don't request challenge numbers from\n            server. [default: false]\n    -l, --list \u003clist\u003e...\n            List of strings specified in \"PROXY_IP:PORT SERVER_IP:PORT\" format\n\n    -p, --update-period \u003cupdate_period\u003e\n            Update period in milliseconds. [default: 1000]\n\n\n```\n\nExample usage:\n```\n $ ./source_query_cacher -p 1000 -c 5 -l \"127.0.0.1:27015 127.0.0.1:27016\" \"127.0.0.1:27018 127.0.0.1:27019\"\n```\n\n### Credits\n\nRust community! Especially [Rust Tokio](https://t.me/tokio_rust) and [Rust](https://t.me/rustlang_ru) russian telegram chats for the great help and support ։)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fin-line%2Fsource_query_cacher","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fin-line%2Fsource_query_cacher","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fin-line%2Fsource_query_cacher/lists"}