{"id":18578592,"url":"https://github.com/iagoabal/eba","last_synced_at":"2025-04-10T10:31:15.788Z","repository":{"id":139375401,"uuid":"74483860","full_name":"IagoAbal/eba","owner":"IagoAbal","description":"EBA is a static bug finder for C.","archived":false,"fork":false,"pushed_at":"2020-06-22T12:35:49.000Z","size":1451,"stargazers_count":14,"open_issues_count":0,"forks_count":3,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-24T19:39:32.559Z","etag":null,"topics":["c","static-analysis","static-analyzer","static-code-analysis"],"latest_commit_sha":null,"homepage":"https://www.iagoabal.eu/eba","language":"OCaml","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/IagoAbal.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","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}},"created_at":"2016-11-22T15:03:44.000Z","updated_at":"2022-03-14T03:23:04.000Z","dependencies_parsed_at":null,"dependency_job_id":"0e3d51da-eece-4ef8-82d4-91ab761e601d","html_url":"https://github.com/IagoAbal/eba","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IagoAbal%2Feba","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IagoAbal%2Feba/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IagoAbal%2Feba/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IagoAbal%2Feba/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/IagoAbal","download_url":"https://codeload.github.com/IagoAbal/eba/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248199136,"owners_count":21063641,"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":["c","static-analysis","static-analyzer","static-code-analysis"],"created_at":"2024-11-06T23:36:11.736Z","updated_at":"2025-04-10T10:31:15.783Z","avatar_url":"https://github.com/IagoAbal.png","language":"OCaml","readme":"# EBA: An effective bug finder for C\n\nEBA is a prototype bug finder for C based on side-effect analysis and model-checking.\n\nFor now, you can use it to find double-lock bugs in the Linux kernel, e.g.:\n\n    git clone --depth=1 https://github.com/torvalds/linux.git\n    cd linux\n    make allyesconfig\n    scripts/eba-linux.sh drivers/net\n\nThe script will find all C source files under `drivers/`, call CPP on them, and call EBA to find potential double-locks. Be patient, this may take several hours.\n\nIf EBA finds some potential bug in `path/to/file.c`, it will write the bug traces in `_eba/path/to/file.warn`:\n\n    find _eba/ -iname '*.warn'\n\n### Hows does it work?\n\nIt combines side-effect analysis and model-checking, check the website for more info: [http://www.iagoabal.eu/eba/](http://www.iagoabal.eu/eba/)\n\n### Does it really find bugs?\n\nYes, it really does, check the website for more info: [http://www.iagoabal.eu/eba/](http://www.iagoabal.eu/eba/)\n\n## Installation\n\nSee the [Installation instructions](INSTALL.md).\n\n## Running the tests\n\nIf you want to run the tests you will need to install _cram_, for instance using _pip_:\n\n    sudo apt-get install python-pip\n    sudo pip install cram\n\nYou should place _eba_ somewhere in your _$PATH_:\n\n    cram test/*.t\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiagoabal%2Feba","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fiagoabal%2Feba","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiagoabal%2Feba/lists"}