{"id":19174629,"url":"https://github.com/equalitie/cpp-upnp","last_synced_at":"2026-03-04T03:31:48.391Z","repository":{"id":45230282,"uuid":"232867123","full_name":"equalitie/cpp-upnp","owner":"equalitie","description":"This is a read-only mirror of: https://gitlab.com/equalitie/cpp-upnp \"UPnP C++ library using Boost.Asio\"","archived":false,"fork":false,"pushed_at":"2023-10-18T01:19:48.000Z","size":117,"stargazers_count":14,"open_issues_count":0,"forks_count":8,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-05-07T18:38:22.821Z","etag":null,"topics":["asio","cpp","cpp14","upnp"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsl-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/equalitie.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2020-01-09T17:35:08.000Z","updated_at":"2025-04-24T13:23:28.000Z","dependencies_parsed_at":"2022-09-19T18:02:29.555Z","dependency_job_id":"bc4fe895-3f2a-4c72-9d59-79b34852e340","html_url":"https://github.com/equalitie/cpp-upnp","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/equalitie/cpp-upnp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/equalitie%2Fcpp-upnp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/equalitie%2Fcpp-upnp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/equalitie%2Fcpp-upnp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/equalitie%2Fcpp-upnp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/equalitie","download_url":"https://codeload.github.com/equalitie/cpp-upnp/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/equalitie%2Fcpp-upnp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30070755,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-04T03:25:38.285Z","status":"ssl_error","status_checked_at":"2026-03-04T03:25:05.086Z","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":["asio","cpp","cpp14","upnp"],"created_at":"2024-11-09T10:18:33.966Z","updated_at":"2026-03-04T03:31:48.368Z","avatar_url":"https://github.com/equalitie.png","language":"C++","readme":"[![CircleCI](https://circleci.com/gh/equalitie/cpp-upnp/tree/master.svg?style=shield)](https://circleci.com/gh/equalitie/cpp-upnp/tree/master)\n\n# CPPUPnP\n\nBoost.Asio based C++ library to implement parts of the UPnP standard.\n\n## Status\n\nThis library is under development and the API will very likely change in a\nbackward incompatible way.\n\nThe current functionality includes listing, creating and deleting of TCP and\nUDP port mappings on IGD (v1 and v2) devices.\n\n## Build instructions\n\n### Include in your project\n\nIf you have sources of CPPUPnP somewhere on your disk, simply set the\n`CPPUPnP_DIR` variable to point to that CPPUPnP's directory and call\n`find_package(CPPUPnP REQUIRED)` as is done in the\n[example/CMakeLists.txt](example/CMakeLists.txt)\n\nIf you don't have CPPUPnP on your disk, have cmake download it prior to calling\n`find_package(CPPUPnP REQUIRED)` like so:\n\n    include(FetchContent)\n    fetchcontent_populate(CPPUPnP GIT_REPOSITORY \u003cCPPUPnP-GIT-Repository\u003e)\n    set(CPPUPnP_DIR ${CMAKE_BINARY_DIR}/cppupnp-src)\n    find_package(CPPUPnP REQUIRED)\n\n### Build examples and tests\n\nPlease have a look into [.circleci/config.yml](.circleci/config.yml)\n\n## Useful links/documents\n\n[UPnP standards](https://openconnectivity.org/developer/specifications/upnp-resources/upnp/#standards)\u003cbr\u003e\n[RFC6970](https://tools.ietf.org/html/rfc6970)\u003cbr\u003e\n[UPnP IGD \"A Fox in the Hen House\" (pdf)](https://www.blackhat.com/presentations/bh-usa-08/Squire/BH_US_08_Squire_A_Fox_in_the_Hen_House%20White%20Paper.pdf)\u003cbr\u003e\n[Golang code that inspired this library](https://github.com/syncthing/syncthing/tree/master/lib/upnp)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fequalitie%2Fcpp-upnp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fequalitie%2Fcpp-upnp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fequalitie%2Fcpp-upnp/lists"}