{"id":19357502,"url":"https://github.com/hbagdi/ksocket","last_synced_at":"2025-08-06T08:12:28.857Z","repository":{"id":53197129,"uuid":"97390932","full_name":"hbagdi/ksocket","owner":"hbagdi","description":"ksocket: easy TCP/UDP networking in kernel space","archived":false,"fork":false,"pushed_at":"2021-04-01T10:31:40.000Z","size":22,"stargazers_count":25,"open_issues_count":0,"forks_count":10,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-23T10:48:01.668Z","etag":null,"topics":["kernel-functions","kernel-module","kernel-space","ksocket","networking","tcp","udp"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hbagdi.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":"2017-07-16T15:02:23.000Z","updated_at":"2024-12-05T16:07:42.000Z","dependencies_parsed_at":"2022-09-10T08:41:03.309Z","dependency_job_id":null,"html_url":"https://github.com/hbagdi/ksocket","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/hbagdi/ksocket","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hbagdi%2Fksocket","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hbagdi%2Fksocket/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hbagdi%2Fksocket/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hbagdi%2Fksocket/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hbagdi","download_url":"https://codeload.github.com/hbagdi/ksocket/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hbagdi%2Fksocket/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269042271,"owners_count":24349657,"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","status":"online","status_checked_at":"2025-08-06T02:00:09.910Z","response_time":99,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["kernel-functions","kernel-module","kernel-space","ksocket","networking","tcp","udp"],"created_at":"2024-11-10T07:07:45.586Z","updated_at":"2025-08-06T08:12:28.805Z","avatar_url":"https://github.com/hbagdi.png","language":"C","readme":"# ksocket API  \n\nBSD-style socket API in kernel space for TCP/IP networking.\nOriginal ksocket for v2.6 was published at [http://ksocket.sourceforge.net/](http://ksocket.sourceforge.net/).\nThis repository contains changes to make it compatible with new kernel versions.\nThe ksocket API has been updated to incorporate the changes related to the [iov_iter](https://lwn.net/Articles/625077/) interface introduced in kernel v3.19+.\n\n### Getting started\n```\n$ git clone https://github.com/hbagdi/ksocket.git\n$ cd ksocket/src\n$ make # make sure you have the kernel headers/tree installed\n$ sudo insmod ksocket.ko\n#now you can use the exported symbols from this kernel module\n```\n\n### Sample\nLook at `sample` sub-directory for code-samples.\n```\n$ cd ksocket/sample/tcp/\n$ make\n# two kernel modules are ksocket_tcp_cli_demo.ko(TCP client) and ksocket_tcp_srv_demo.ko(TCP server)\n$ sudo ksocket_tcp_srv_demo.ko\n$ sudo ksocket_tcp_cli_demo.ko\n$ dmesg\n```\n\n### Support across kernel versions\nThe original ksocket work was to support Linux 2.6, however support for v5.4.0 has been\nincluded.\n\nv5.4.0 support is a work on Linux ubuntu 5.4.0-66 x86-64, therefore there is no guarantee it works\nwell on versions \u003e 2.6 \u0026\u0026 \u003c 5.3.x\n\nIn order to keep the 2.6 version stable it was left without the 5.4.0 work,\ninstead we now have two branches: v2.6 (master) and v5.4.0\n\n#### v2.6 original development\nhttps://github.com/hbagdi/ksocket\n\n#### v5.4.0\nhttps://github.com/hbagdi/ksocket/tree/linux-5.4.0\n\n### Contributing/Reporting Bugs\n- Feel free to open Pull-Requests here for any enhancements/fixes.\n- Open an issue in the repository for any help or bugs. Make sure to mention Kernel version.\n\n### Contact\nEmail at hardikbagdi@gmail.com for any further help.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhbagdi%2Fksocket","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhbagdi%2Fksocket","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhbagdi%2Fksocket/lists"}