{"id":34674912,"url":"https://github.com/homocodian/netutils","last_synced_at":"2026-05-23T20:31:36.195Z","repository":{"id":327581596,"uuid":"1109423075","full_name":"homocodian/netutils","owner":"homocodian","description":"Utilities  for computer networking","archived":false,"fork":false,"pushed_at":"2025-12-04T12:41:00.000Z","size":25,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-12-26T08:59:08.468Z","etag":null,"topics":["binary","checksum-calculation","cpp","cpp17","macaddress"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/homocodian.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-12-03T19:32:05.000Z","updated_at":"2025-12-04T12:48:11.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/homocodian/netutils","commit_stats":null,"previous_names":["homocodian/netutils"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/homocodian/netutils","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/homocodian%2Fnetutils","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/homocodian%2Fnetutils/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/homocodian%2Fnetutils/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/homocodian%2Fnetutils/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/homocodian","download_url":"https://codeload.github.com/homocodian/netutils/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/homocodian%2Fnetutils/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33412082,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-23T18:09:33.147Z","status":"ssl_error","status_checked_at":"2026-05-23T18:09:31.380Z","response_time":53,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: 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":["binary","checksum-calculation","cpp","cpp17","macaddress"],"created_at":"2025-12-24T20:21:09.595Z","updated_at":"2026-05-23T20:31:36.171Z","avatar_url":"https://github.com/homocodian.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# netutils\n\n## Description\n\n**netutils** is a lightweight cross-platform CLI tool providing helpful network utilities:\n\n- Print raw binary bytes from input\n- Generate checksums in **HEX** or **binary** formats\n- Validate MAC addresses\n\nWritten in **C++17**, using:\n\n- `argparse` for argument parsing\n- Internal modular libraries (`checksum`, `macaddr`)\n- Portable build system using **CMake**\n\n---\n\n## Usage\n\n```\nnetutils [OPTIONS]\n```\n\n### Mutually Exclusive Options (required — choose one)\n\n| Short Flag | Long Flag    | Description                                   |\n| ---------- | ------------ | --------------------------------------------- |\n| `-b`       | `--binary`   | Print raw binary bytes of the input           |\n| `-c`       | `--checksum` | Calculate checksum for the input              |\n| `-vm`      | `--vmac`     | Validate whether input is a valid MAC address |\n\n### Additional Options\n\n| Short Flag | Long Flag   | Description                                                   | Default |\n| ---------- | ----------- | ------------------------------------------------------------- | ------- |\n| `-f`       | `--format`  | Checksum output format (`hex` or `bin`), only valid with `-c` | `hex`   |\n| `-h`       | `--help`    | Show help message                                             | —       |\n| `-v`       | `--version` | Show version                                                  | —       |\n\n---\n\n### Examples\n\nPrint raw binary bytes:\n\n```\nnetutils -b \"Hello\"\n```\n\nGenerate checksum (HEX):\n\n```\nnetutils -c \"my raw binary data\"\n```\n\nGenerate checksum (binary):\n\n```\nnetutils -c \"my data\" -f bin\n```\n\nValidate MAC address:\n\n```\nnetutils -vm \"AA:BB:CC:DD:EE:FF\"\n```\n\n---\n\n## Build Manually\n\n### Requirements\n\n- C++17 compatible compiler:\n  - Linux: `g++` or `clang++`\n  - Windows: `MSVC`\n- `cmake` (\u003e= 3.16 recommended)\n\n### Clone and Build\n\n```\ngit clone https://github.com/homocodian/netutils.git\ncd netutils\nmkdir build \u0026\u0026 cd build\ncmake ..\ncmake --build . --config Release\n```\n\n---\n\n## Install Manually\n\n### Linux (via CMake)\n\n```\nsudo cmake --install . --config Release --prefix /usr/local\n```\n\nOr copy manually:\n\n```\nsudo cp netutils /usr/local/bin/netutils\n```\n\n### Windows (via CMake)\n\n```\ncmake --install . --config Release --prefix \"C:\\Program Files\\netutils\"\n```\n\nOr manually copy `netutils.exe` into any directory listed in system `PATH`.\n\n---\n\n## Run After Install\n\n```\nnetutils --help\n```\n\n---\n\n## Prebuilt Downloads (x86_64)\n\n### Linux (x86_64)\n\n```\nwget https://github.com/homocodian/netutils/releases/download/v1.0.0/netutils-x86_64-linux\nchmod +x netutils-x86_64-linux\nsudo mv netutils-x86_64-linux /usr/local/bin/netutils\n```\n\n### Windows (x86_64)\n\nDownload and run:\n\n```\nhttps://github.com/homocodian/netutils/releases/download/v1.0.0/netutils-x86_64-windows.exe\n```\n\nMove the `.exe` anywhere you like, optionally add the directory to `PATH`.\n\n---\n\n## Supported Platforms\n\n| OS      | Architecture |\n| ------- | ------------ |\n| Linux   | `x86_64`     |\n| Windows | `x86_64`     |\n\n---\n\n## Notes\n\n- Compound short flags like `-abc` are **not supported**\n- `-f / --format` is only allowed when used with `-c / --checksum`\n\n---\n\n## License (MIT)\n\n```\nMIT License\n\nCopyright (c) 2025\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS\nOR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\nWHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\nCONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhomocodian%2Fnetutils","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhomocodian%2Fnetutils","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhomocodian%2Fnetutils/lists"}