{"id":19601260,"url":"https://github.com/refinitiv/libvmod-zlib","last_synced_at":"2026-03-04T13:31:12.921Z","repository":{"id":54880789,"uuid":"83815909","full_name":"Refinitiv/libvmod-zlib","owner":"Refinitiv","description":"Varnish VMOD: compress and uncompress (gzip/gunzip) directly in VCL","archived":false,"fork":false,"pushed_at":"2021-01-22T14:45:55.000Z","size":42,"stargazers_count":2,"open_issues_count":0,"forks_count":2,"subscribers_count":95,"default_branch":"master","last_synced_at":"2025-11-21T13:22:12.722Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"M4","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Refinitiv.png","metadata":{"files":{"readme":"README.rst","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":"2017-03-03T16:00:37.000Z","updated_at":"2021-01-22T14:45:58.000Z","dependencies_parsed_at":"2022-08-14T05:31:19.488Z","dependency_job_id":null,"html_url":"https://github.com/Refinitiv/libvmod-zlib","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Refinitiv/libvmod-zlib","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Refinitiv%2Flibvmod-zlib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Refinitiv%2Flibvmod-zlib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Refinitiv%2Flibvmod-zlib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Refinitiv%2Flibvmod-zlib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Refinitiv","download_url":"https://codeload.github.com/Refinitiv/libvmod-zlib/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Refinitiv%2Flibvmod-zlib/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30081412,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-04T13:22:36.021Z","status":"ssl_error","status_checked_at":"2026-03-04T13:20:45.750Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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-11T09:17:44.986Z","updated_at":"2026-03-04T13:31:12.883Z","avatar_url":"https://github.com/Refinitiv.png","language":"M4","funding_links":[],"categories":[],"sub_categories":[],"readme":"============\nvmod-zlib\n============\n.. image:: https://travis-ci.org/Refinitiv/libvmod-zlib.svg?branch=master\n    :target: https://travis-ci.org/Refinitiv/libvmod-zlib\n\nSYNOPSIS\n========\n\nimport zlib;\n\nDESCRIPTION\n===========\n\nZLIB vmodule for Varnish 4 and 5. `libvmod-zlib` uncompress request's body\nbefore sending it to the backend.\nE.g. it is useful when backends doesn't support compression.\nAlso, It could be used to reduce backend's CPU load but note that it will\nimpact network bandwidth and delay. Use it only for particular use-cases.\n\nFUNCTIONS\n=========\n\nunzip_request()\n\nUncompress the request's body in `vcl_recv` when `Content-Encoding` is set to\n`gzip`. No operation if `Content-Encoding` is unset or `none`.\n\nUSAGE\n=====\n\nIn your VCL you could then use this vmod along the following lines::\n\n        import zlib;\n\n        sub vcl_recv {\n                if (zlib.unzip_request() \u003c 0) {\n                    return (synth(400, \"can't uncompress request's body\"));\n                }\n        }\n\nNote that VMOD allocates the size of `gzip_buffer` bytes in the\n`workspace_client`. In order to work properly, you must increase the default\nsize of `workspace_client` which is too low by default. (`gzip_buffer` and\n`http_req_size` are already taking the full space).\n\nCOPYRIGHT\n=========\nThis document is licensed under BSD-2-Clause license. See LICENSE for details.\n\nThe code was opened by (c) Refinitiv (previously Thomson Reuters).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frefinitiv%2Flibvmod-zlib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frefinitiv%2Flibvmod-zlib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frefinitiv%2Flibvmod-zlib/lists"}