├── .git-blame-ignore-revs ├── .gitattributes ├── .gitignore ├── .installation_root ├── .sbtopts ├── .scala-steward.conf ├── .scalafmt.conf ├── Dockerfile ├── LICENSE ├── README.md ├── benchmarks ├── .gitignore ├── README.md ├── build.sbt └── src │ └── test │ ├── resources │ ├── ifspec │ │ ├── aliasing │ │ │ ├── Aliasing1$A.class │ │ │ ├── Aliasing1.class │ │ │ ├── Aliasing1.java │ │ │ ├── Aliasing10$A.class │ │ │ ├── Aliasing10.class │ │ │ ├── Aliasing10.java │ │ │ ├── Aliasing11$A.class │ │ │ ├── Aliasing11.class │ │ │ ├── Aliasing11.java │ │ │ ├── Aliasing2$A.class │ │ │ ├── Aliasing2.class │ │ │ ├── Aliasing2.java │ │ │ ├── Aliasing3$A.class │ │ │ ├── Aliasing3.class │ │ │ ├── Aliasing3.java │ │ │ ├── Aliasing4$A.class │ │ │ ├── Aliasing4.class │ │ │ ├── Aliasing4.java │ │ │ ├── Aliasing5$A.class │ │ │ ├── Aliasing5$B.class │ │ │ ├── Aliasing5.class │ │ │ ├── Aliasing5.java │ │ │ ├── Aliasing6$A.class │ │ │ ├── Aliasing6$B.class │ │ │ ├── Aliasing6.class │ │ │ ├── Aliasing6.java │ │ │ ├── Aliasing7$A.class │ │ │ ├── Aliasing7.class │ │ │ ├── Aliasing7.java │ │ │ ├── Aliasing8$A.class │ │ │ ├── Aliasing8.class │ │ │ ├── Aliasing8.java │ │ │ ├── Aliasing9$A.class │ │ │ ├── Aliasing9.class │ │ │ └── Aliasing9.java │ │ ├── arrays │ │ │ ├── Arrays1.class │ │ │ ├── Arrays1.java │ │ │ ├── Arrays10$Video.class │ │ │ ├── Arrays10$VideoSet.class │ │ │ ├── Arrays10.class │ │ │ ├── Arrays10.java │ │ │ ├── Arrays2.class │ │ │ ├── Arrays2.java │ │ │ ├── Arrays3.class │ │ │ ├── Arrays3.java │ │ │ ├── Arrays4.class │ │ │ ├── Arrays4.java │ │ │ ├── Arrays5.class │ │ │ ├── Arrays5.java │ │ │ ├── Arrays6.class │ │ │ ├── Arrays6.java │ │ │ ├── Arrays7.class │ │ │ ├── Arrays7.java │ │ │ ├── Arrays8.class │ │ │ ├── Arrays8.java │ │ │ ├── Arrays9.class │ │ │ └── Arrays9.java │ │ ├── casting │ │ │ ├── Casting1.class │ │ │ ├── Casting1.java │ │ │ ├── Casting2$A.class │ │ │ ├── Casting2$B.class │ │ │ ├── Casting2$C.class │ │ │ ├── Casting2.class │ │ │ └── Casting2.java │ │ ├── classinitializer │ │ │ ├── ClassInitializer1$A.class │ │ │ ├── ClassInitializer1.class │ │ │ ├── ClassInitializer1.java │ │ │ ├── ClassInitializer2$A.class │ │ │ ├── ClassInitializer2.class │ │ │ ├── ClassInitializer2.java │ │ │ ├── ClassInitializer3$A.class │ │ │ ├── ClassInitializer3.class │ │ │ ├── ClassInitializer3.java │ │ │ ├── ClassInitializer4$A.class │ │ │ ├── ClassInitializer4.class │ │ │ ├── ClassInitializer4.java │ │ │ ├── ClassInitializer5.class │ │ │ ├── ClassInitializer5.java │ │ │ ├── ClassInitializer6$A.class │ │ │ ├── ClassInitializer6$B.class │ │ │ ├── ClassInitializer6.class │ │ │ ├── ClassInitializer6.java │ │ │ ├── ClassInitializer7$A.class │ │ │ ├── ClassInitializer7.class │ │ │ └── ClassInitializer7.java │ │ ├── exceptions │ │ │ ├── Exceptions1.class │ │ │ ├── Exceptions1.java │ │ │ ├── Exceptions2$T.class │ │ │ ├── Exceptions2.class │ │ │ ├── Exceptions2.java │ │ │ ├── Exceptions3$T.class │ │ │ ├── Exceptions3.class │ │ │ ├── Exceptions3.java │ │ │ ├── Exceptions4$T.class │ │ │ ├── Exceptions4.class │ │ │ ├── Exceptions4.java │ │ │ ├── Exceptions5.class │ │ │ ├── Exceptions5.java │ │ │ ├── Exceptions6.class │ │ │ └── Exceptions6.java │ │ ├── highconditional │ │ │ ├── HighConditional1.class │ │ │ ├── HighConditional1.java │ │ │ ├── HighConditional10.class │ │ │ ├── HighConditional10.java │ │ │ ├── HighConditional11$A.class │ │ │ ├── HighConditional11$B.class │ │ │ ├── HighConditional11$C.class │ │ │ ├── HighConditional11.class │ │ │ ├── HighConditional11.java │ │ │ ├── HighConditional12$Webstore$HighConditional12$Video.class │ │ │ ├── HighConditional12$Webstore$HighConditional12$VideoSet.class │ │ │ ├── HighConditional12$Webstore.class │ │ │ ├── HighConditional12.java │ │ │ ├── HighConditional2.class │ │ │ ├── HighConditional2.java │ │ │ ├── HighConditional3.class │ │ │ ├── HighConditional3.java │ │ │ ├── HighConditional4.class │ │ │ ├── HighConditional4.java │ │ │ ├── HighConditional5$Account.class │ │ │ ├── HighConditional5$AccountOwner.class │ │ │ ├── HighConditional5$Beneficiary.class │ │ │ ├── HighConditional5$ErrorLog.class │ │ │ ├── HighConditional5$Main.class │ │ │ ├── HighConditional5$TransactionLog.class │ │ │ ├── HighConditional5.java │ │ │ ├── HighConditional6$Account.class │ │ │ ├── HighConditional6$AccountOwner.class │ │ │ ├── HighConditional6$Beneficiary.class │ │ │ ├── HighConditional6$ErrorLog.class │ │ │ ├── HighConditional6$Main.class │ │ │ ├── HighConditional6$TransactionLog.class │ │ │ ├── HighConditional6.java │ │ │ ├── HighConditional7$Main.class │ │ │ ├── HighConditional7$PasswordManager.class │ │ │ ├── HighConditional7.java │ │ │ ├── HighConditional8$Main.class │ │ │ ├── HighConditional8$PasswordManager.class │ │ │ ├── HighConditional8.java │ │ │ ├── HighConditional9.class │ │ │ └── HighConditional9.java │ │ ├── library │ │ │ ├── Library1.class │ │ │ ├── Library1.java │ │ │ ├── Library2.class │ │ │ ├── Library2.java │ │ │ ├── Library3.class │ │ │ ├── Library3.java │ │ │ ├── Library4.class │ │ │ ├── Library4.java │ │ │ ├── Library5.class │ │ │ ├── Library5.java │ │ │ ├── Library6.class │ │ │ ├── Library6.java │ │ │ ├── Library7.class │ │ │ └── Library7.java │ │ └── simple │ │ │ ├── Simple1.class │ │ │ ├── Simple1.java │ │ │ ├── Simple10.class │ │ │ ├── Simple10.java │ │ │ ├── Simple11$A.class │ │ │ ├── Simple11.class │ │ │ ├── Simple11.java │ │ │ ├── Simple12.class │ │ │ ├── Simple12.java │ │ │ ├── Simple13$Review.class │ │ │ ├── Simple13.class │ │ │ ├── Simple13.java │ │ │ ├── Simple14$Review.class │ │ │ ├── Simple14.class │ │ │ ├── Simple14.java │ │ │ ├── Simple15.class │ │ │ ├── Simple15.java │ │ │ ├── Simple16.class │ │ │ ├── Simple16.java │ │ │ ├── Simple17.class │ │ │ ├── Simple17.java │ │ │ ├── Simple18$Address.class │ │ │ ├── Simple18$DAddress.class │ │ │ ├── Simple18.class │ │ │ ├── Simple18.java │ │ │ ├── Simple2.class │ │ │ ├── Simple2.java │ │ │ ├── Simple3.class │ │ │ ├── Simple3.java │ │ │ ├── Simple4.class │ │ │ ├── Simple4.java │ │ │ ├── Simple5.class │ │ │ ├── Simple5.java │ │ │ ├── Simple6.class │ │ │ ├── Simple6.java │ │ │ ├── Simple7.class │ │ │ ├── Simple7.java │ │ │ ├── Simple8.class │ │ │ ├── Simple8.java │ │ │ ├── Simple9.class │ │ │ └── Simple9.java │ ├── jinfoflow │ │ ├── basic │ │ │ ├── Basic1.class │ │ │ ├── Basic1.java │ │ │ ├── Basic2.class │ │ │ └── Basic2.java │ │ ├── ctx │ │ │ ├── Ctx1$Box.class │ │ │ ├── Ctx1.class │ │ │ ├── Ctx1.java │ │ │ ├── Ctx2$Box1.class │ │ │ ├── Ctx2$Box2.class │ │ │ ├── Ctx2.class │ │ │ ├── Ctx2.java │ │ │ ├── Ctx3$CensoredPrintWriter.class │ │ │ ├── Ctx3$UpgradedPrintWriter.class │ │ │ ├── Ctx3.class │ │ │ ├── Ctx3.java │ │ │ ├── Ctx4$CensoredBufferedReader.class │ │ │ ├── Ctx4$UpgradedBufferedReader.class │ │ │ ├── Ctx4.class │ │ │ ├── Ctx4.java │ │ │ ├── Ctx5.class │ │ │ └── Ctx5.java │ │ └── events │ │ │ ├── Events1.class │ │ │ ├── Events1.java │ │ │ ├── Events2.class │ │ │ ├── Events2.java │ │ │ ├── Events3.class │ │ │ ├── Events3.java │ │ │ ├── Events4.class │ │ │ ├── Events4.java │ │ │ ├── Events5$AnotherEventHandler.class │ │ │ ├── Events5.class │ │ │ ├── Events5.java │ │ │ ├── eventframework │ │ │ ├── Event.class │ │ │ ├── Event.java │ │ │ ├── EventDriver.class │ │ │ ├── EventDriver.java │ │ │ ├── EventHandler.class │ │ │ ├── EventHandler.java │ │ │ ├── UninitialisedEvent.class │ │ │ └── UninitialisedEvent.java │ │ │ └── events │ │ │ ├── NewEntityEvent.class │ │ │ ├── NewEntityEvent.java │ │ │ ├── NewTransactionEvent.class │ │ │ ├── NewTransactionEvent.java │ │ │ ├── UnusedEvent.class │ │ │ └── UnusedEvent.java │ ├── log4j2.xml │ └── securibench │ │ └── micro │ │ ├── BasicTestCase.class │ │ ├── BasicTestCase.java │ │ ├── MicroTestCase.class │ │ ├── MicroTestCase.java │ │ ├── aliasing │ │ ├── Aliasing1.class │ │ ├── Aliasing1.java │ │ ├── Aliasing2.class │ │ ├── Aliasing2.java │ │ ├── Aliasing3.class │ │ ├── Aliasing3.java │ │ ├── Aliasing4.class │ │ ├── Aliasing4.java │ │ ├── Aliasing5.class │ │ ├── Aliasing5.java │ │ ├── Aliasing6.class │ │ └── Aliasing6.java │ │ ├── arrays │ │ ├── Arrays1.class │ │ ├── Arrays1.java │ │ ├── Arrays10.class │ │ ├── Arrays10.java │ │ ├── Arrays2.class │ │ ├── Arrays2.java │ │ ├── Arrays3.class │ │ ├── Arrays3.java │ │ ├── Arrays4.class │ │ ├── Arrays4.java │ │ ├── Arrays5.class │ │ ├── Arrays5.java │ │ ├── Arrays6.class │ │ ├── Arrays6.java │ │ ├── Arrays7.class │ │ ├── Arrays7.java │ │ ├── Arrays8.class │ │ ├── Arrays8.java │ │ ├── Arrays9.class │ │ └── Arrays9.java │ │ ├── basic │ │ ├── Basic1.class │ │ ├── Basic1.java │ │ ├── Basic10.class │ │ ├── Basic10.java │ │ ├── Basic11.class │ │ ├── Basic11.java │ │ ├── Basic12.class │ │ ├── Basic12.java │ │ ├── Basic13.class │ │ ├── Basic13.java │ │ ├── Basic14.class │ │ ├── Basic14.java │ │ ├── Basic15.class │ │ ├── Basic15.java │ │ ├── Basic16$Widget.class │ │ ├── Basic16.class │ │ ├── Basic16.java │ │ ├── Basic17$Widget.class │ │ ├── Basic17.class │ │ ├── Basic17.java │ │ ├── Basic18.class │ │ ├── Basic18.java │ │ ├── Basic19.class │ │ ├── Basic19.java │ │ ├── Basic2.class │ │ ├── Basic2.java │ │ ├── Basic20.class │ │ ├── Basic20.java │ │ ├── Basic21.class │ │ ├── Basic21.java │ │ ├── Basic22.class │ │ ├── Basic22.java │ │ ├── Basic23.class │ │ ├── Basic23.java │ │ ├── Basic24.class │ │ ├── Basic24.java │ │ ├── Basic25.class │ │ ├── Basic25.java │ │ ├── Basic26.class │ │ ├── Basic26.java │ │ ├── Basic27.class │ │ ├── Basic27.java │ │ ├── Basic28.class │ │ ├── Basic28.java │ │ ├── Basic29$Node.class │ │ ├── Basic29.class │ │ ├── Basic29.java │ │ ├── Basic3.class │ │ ├── Basic3.java │ │ ├── Basic30$Data.class │ │ ├── Basic30.class │ │ ├── Basic30.java │ │ ├── Basic31$Data.class │ │ ├── Basic31.class │ │ ├── Basic31.java │ │ ├── Basic32.class │ │ ├── Basic32.java │ │ ├── Basic33.class │ │ ├── Basic33.java │ │ ├── Basic34.class │ │ ├── Basic34.java │ │ ├── Basic35.class │ │ ├── Basic35.java │ │ ├── Basic36.class │ │ ├── Basic36.java │ │ ├── Basic37.class │ │ ├── Basic37.java │ │ ├── Basic38.class │ │ ├── Basic38.java │ │ ├── Basic39.class │ │ ├── Basic39.java │ │ ├── Basic4.class │ │ ├── Basic4.java │ │ ├── Basic40.class │ │ ├── Basic40.java │ │ ├── Basic41.class │ │ ├── Basic41.java │ │ ├── Basic42.class │ │ ├── Basic42.java │ │ ├── Basic5.class │ │ ├── Basic5.java │ │ ├── Basic6.class │ │ ├── Basic6.java │ │ ├── Basic7.class │ │ ├── Basic7.java │ │ ├── Basic8.class │ │ ├── Basic8.java │ │ ├── Basic9.class │ │ └── Basic9.java │ │ ├── collections │ │ ├── Collections1.class │ │ ├── Collections1.java │ │ ├── Collections10.class │ │ ├── Collections10.java │ │ ├── Collections11.class │ │ ├── Collections11.java │ │ ├── Collections11b.class │ │ ├── Collections11b.java │ │ ├── Collections12.class │ │ ├── Collections12.java │ │ ├── Collections13.class │ │ ├── Collections13.java │ │ ├── Collections14.class │ │ ├── Collections14.java │ │ ├── Collections2.class │ │ ├── Collections2.java │ │ ├── Collections3.class │ │ ├── Collections3.java │ │ ├── Collections4.class │ │ ├── Collections4.java │ │ ├── Collections5.class │ │ ├── Collections5.java │ │ ├── Collections6.class │ │ ├── Collections6.java │ │ ├── Collections7.class │ │ ├── Collections7.java │ │ ├── Collections8.class │ │ ├── Collections8.java │ │ ├── Collections9.class │ │ └── Collections9.java │ │ ├── datastructures │ │ ├── Datastructures1$C.class │ │ ├── Datastructures1.class │ │ ├── Datastructures1.java │ │ ├── Datastructures2$C.class │ │ ├── Datastructures2.class │ │ ├── Datastructures2.java │ │ ├── Datastructures3$C.class │ │ ├── Datastructures3.class │ │ ├── Datastructures3.java │ │ ├── Datastructures4$C.class │ │ ├── Datastructures4.class │ │ ├── Datastructures4.java │ │ ├── Datastructures5$C.class │ │ ├── Datastructures5.class │ │ ├── Datastructures5.java │ │ ├── Datastructures6$C.class │ │ ├── Datastructures6.class │ │ └── Datastructures6.java │ │ ├── factories │ │ ├── Factories1.class │ │ ├── Factories1.java │ │ ├── Factories2.class │ │ ├── Factories2.java │ │ ├── Factories3$StringWrapper.class │ │ ├── Factories3.class │ │ └── Factories3.java │ │ ├── inter │ │ ├── Inter1.class │ │ ├── Inter1.java │ │ ├── Inter10.class │ │ ├── Inter10.java │ │ ├── Inter11.class │ │ ├── Inter11.java │ │ ├── Inter12.class │ │ ├── Inter12.java │ │ ├── Inter13.class │ │ ├── Inter13.java │ │ ├── Inter14.class │ │ ├── Inter14.java │ │ ├── Inter2.class │ │ ├── Inter2.java │ │ ├── Inter3.class │ │ ├── Inter3.java │ │ ├── Inter4.class │ │ ├── Inter4.java │ │ ├── Inter5.class │ │ ├── Inter5.java │ │ ├── Inter6$ReflectivelyCreated.class │ │ ├── Inter6.class │ │ ├── Inter6.java │ │ ├── Inter7$Base.class │ │ ├── Inter7$ReflectivelyCreated.class │ │ ├── Inter7.class │ │ ├── Inter7.java │ │ ├── Inter8.class │ │ ├── Inter8.java │ │ ├── Inter9.class │ │ └── Inter9.java │ │ ├── pred │ │ ├── Pred1.class │ │ ├── Pred1.java │ │ ├── Pred2.class │ │ ├── Pred2.java │ │ ├── Pred3.class │ │ ├── Pred3.java │ │ ├── Pred4.class │ │ ├── Pred4.java │ │ ├── Pred5.class │ │ ├── Pred5.java │ │ ├── Pred6.class │ │ ├── Pred6.java │ │ ├── Pred7.class │ │ ├── Pred7.java │ │ ├── Pred8.class │ │ ├── Pred8.java │ │ ├── Pred9.class │ │ └── Pred9.java │ │ ├── refl │ │ ├── Refl1.class │ │ ├── Refl1.java │ │ ├── Refl2.class │ │ ├── Refl2.java │ │ ├── Refl3$ReflectivelyCreated.class │ │ ├── Refl3.class │ │ ├── Refl3.java │ │ ├── Refl4$ReflectivelyCreated.class │ │ ├── Refl4.class │ │ └── Refl4.java │ │ ├── sanitizers │ │ ├── Sanitizers1.class │ │ ├── Sanitizers1.java │ │ ├── Sanitizers2.class │ │ ├── Sanitizers2.java │ │ ├── Sanitizers3.class │ │ ├── Sanitizers3.java │ │ ├── Sanitizers4.class │ │ ├── Sanitizers4.java │ │ ├── Sanitizers5.class │ │ ├── Sanitizers5.java │ │ ├── Sanitizers6.class │ │ └── Sanitizers6.java │ │ ├── session │ │ ├── Session1.class │ │ ├── Session1.java │ │ ├── Session2.class │ │ ├── Session2.java │ │ ├── Session3.class │ │ └── Session3.java │ │ └── strongupdates │ │ ├── StrongUpdates1.class │ │ ├── StrongUpdates1.java │ │ ├── StrongUpdates2.class │ │ ├── StrongUpdates2.java │ │ ├── StrongUpdates3$Widget.class │ │ ├── StrongUpdates3.class │ │ ├── StrongUpdates3.java │ │ ├── StrongUpdates4.class │ │ ├── StrongUpdates4.java │ │ ├── StrongUpdates5.class │ │ └── StrongUpdates5.java │ └── scala │ └── io │ └── joern │ └── benchmarks │ ├── BenchmarkTags.scala │ ├── ifspec │ ├── java │ │ ├── AliasingBenchmark.scala │ │ ├── ArraysBenchmark.scala │ │ ├── CastingBenchmark.scala │ │ ├── ClassInitializerBenchmark.scala │ │ ├── ExceptionsBenchmark.scala │ │ ├── HighConditionalBenchmark.scala │ │ ├── LibraryBenchmark.scala │ │ └── SimpleBenchmark.scala │ └── jvm │ │ ├── AliasingBenchmark.scala │ │ ├── ArraysBenchmark.scala │ │ ├── CastingBenchmark.scala │ │ ├── ClassInitializerBenchmark.scala │ │ ├── ExceptionsBenchmark.scala │ │ ├── HighConditionalBenchmark.scala │ │ ├── LibraryBenchmark.scala │ │ └── SimpleBenchmark.scala │ ├── jinfoflow │ ├── java │ │ ├── BasicBenchmark.scala │ │ ├── CtxBenchmark.scala │ │ └── EventsBenchmark.scala │ └── jvm │ │ ├── BasicBenchmark.scala │ │ ├── CtxBenchmark.scala │ │ └── EventsBenchmark.scala │ ├── securibench │ └── micro │ │ ├── java │ │ ├── AliasingBenchmark.scala │ │ ├── ArrayBenchmark.scala │ │ ├── BasicBenchmark.scala │ │ ├── CollectionsBenchmark.scala │ │ ├── DataStructuresBenchmark.scala │ │ ├── FactoriesBenchmark.scala │ │ ├── InterBenchmark.scala │ │ ├── PredBenchmark.scala │ │ ├── ReflBenchmark.scala │ │ ├── SanitizersBenchmark.scala │ │ ├── SessionBenchmark.scala │ │ └── StrongUpdatesBenchmark.scala │ │ └── jvm │ │ ├── AliasingBenchmark.scala │ │ ├── ArrayBenchmark.scala │ │ ├── BasicBenchmark.scala │ │ ├── CollectionsBenchmark.scala │ │ ├── DataStructuresBenchmark.scala │ │ ├── FactoriesBenchmark.scala │ │ ├── InterBenchmark.scala │ │ ├── PredBenchmark.scala │ │ ├── ReflBenchmark.scala │ │ ├── SanitizersBenchmark.scala │ │ ├── SessionBenchmark.scala │ │ └── StrongUpdatesBenchmark.scala │ └── testfixtures │ ├── BenchmarkFixture.scala │ ├── IfspecFixture.scala │ ├── JInfoFlowFixture.scala │ └── SecuribenchMicroFixture.scala ├── build.sbt ├── c2cpg.sh ├── changelog ├── 2.0.0-scala3.md ├── passthrough_semantics.md └── traversal_removal.md ├── ci ├── Dockerfile.alma ├── Dockerfile.alma8 └── Dockerfile.slim ├── composer-setup.php ├── console ├── build.sbt └── src │ ├── main │ └── scala │ │ └── io │ │ └── joern │ │ └── console │ │ ├── BridgeBase.scala │ │ ├── Commit.scala │ │ ├── Console.scala │ │ ├── ConsoleConfig.scala │ │ ├── CpgConverter.scala │ │ ├── Help.scala │ │ ├── PluginManager.scala │ │ ├── Reporting.scala │ │ ├── Run.scala │ │ ├── SLProduct.scala │ │ ├── cpgcreation │ │ ├── CCpgGenerator.scala │ │ ├── CSharpCpgGenerator.scala │ │ ├── CpgGenerator.scala │ │ ├── CpgGeneratorFactory.scala │ │ ├── GhidraCpgGenerator.scala │ │ ├── GoCpgGenerator.scala │ │ ├── IdaCpgGenerator.scala │ │ ├── ImportCode.scala │ │ ├── JavaCpgGenerator.scala │ │ ├── JavaSrcCpgGenerator.scala │ │ ├── JsCpgGenerator.scala │ │ ├── JsSrcCpgGenerator.scala │ │ ├── KotlinCpgGenerator.scala │ │ ├── LlvmCpgGenerator.scala │ │ ├── PhpCpgGenerator.scala │ │ ├── PyCpgGenerator.scala │ │ ├── PythonSrcCpgGenerator.scala │ │ ├── RubyCpgGenerator.scala │ │ ├── SwiftSrcCpgGenerator.scala │ │ └── package.scala │ │ ├── package.scala │ │ ├── scan │ │ ├── ScanPass.scala │ │ └── package.scala │ │ └── workspacehandling │ │ ├── Project.scala │ │ ├── Workspace.scala │ │ ├── WorkspaceLoader.scala │ │ └── WorkspaceManager.scala │ └── test │ ├── resources │ ├── nonzip.zip │ ├── scripts │ │ ├── general │ │ │ ├── arguments-concatenate.sc │ │ │ ├── divide_by_zero.sc │ │ │ ├── general_plus │ │ │ │ └── scripts.json │ │ │ ├── list-funcs.sc │ │ │ └── scripts.json │ │ └── java │ │ │ ├── list-sl-ns.sc │ │ │ └── scripts.json │ └── test.zip │ └── scala │ └── io │ ├── joern │ └── console │ │ ├── ConsoleConfigTest.scala │ │ ├── ConsoleTests.scala │ │ ├── HelpTests.scala │ │ ├── LanguageHelperTests.scala │ │ ├── PluginManagerTests.scala │ │ ├── testing │ │ ├── ConsoleFixture.scala │ │ └── package.scala │ │ └── workspacehandling │ │ ├── TestLoader.scala │ │ ├── WorkspaceLoaderTests.scala │ │ ├── WorkspaceManagerTests.scala │ │ └── WorkspaceTests.scala │ └── shiftleft │ └── codepropertygraph │ └── cpgloading │ └── TestProtoCpg.scala ├── dataflowengineoss ├── README.md ├── build.sbt └── src │ ├── main │ ├── antlr4 │ │ └── io │ │ │ └── joern │ │ │ └── dataflowengineoss │ │ │ └── Semantics.g4 │ └── scala │ │ └── io │ │ └── joern │ │ └── dataflowengineoss │ │ ├── DefaultSemantics.scala │ │ ├── dotgenerator │ │ ├── DdgGenerator.scala │ │ ├── DotCpg14Generator.scala │ │ ├── DotDdgGenerator.scala │ │ └── DotPdgGenerator.scala │ │ ├── language │ │ ├── ExtendedCfgNode.scala │ │ ├── Path.scala │ │ ├── dotextension │ │ │ └── DdgNodeDot.scala │ │ ├── nodemethods │ │ │ ├── ExpressionMethods.scala │ │ │ └── ExtendedCfgNodeMethods.scala │ │ └── package.scala │ │ ├── layers │ │ └── dataflows │ │ │ ├── DumpCpg14.scala │ │ │ ├── DumpDdg.scala │ │ │ ├── DumpPdg.scala │ │ │ └── OssDataFlow.scala │ │ ├── package.scala │ │ ├── passes │ │ └── reachingdef │ │ │ ├── DataFlowProblem.scala │ │ │ ├── DataFlowSolver.scala │ │ │ ├── DdgGenerator.scala │ │ │ ├── EdgeValidator.scala │ │ │ ├── ReachingDefPass.scala │ │ │ ├── ReachingDefProblem.scala │ │ │ └── package.scala │ │ ├── queryengine │ │ ├── AccessPathUsage.scala │ │ ├── Engine.scala │ │ ├── HeldTaskCompletion.scala │ │ ├── SourcesToStartingPoints.scala │ │ ├── TaskCreator.scala │ │ ├── TaskSolver.scala │ │ └── package.scala │ │ ├── semanticsloader │ │ └── Parser.scala │ │ └── slicing │ │ ├── DataFlowSlicing.scala │ │ ├── UsageSlicing.scala │ │ └── package.scala │ └── test │ └── scala │ └── io │ └── joern │ └── dataflowengineoss │ ├── queryengine │ └── AccessPathUsageTests.scala │ ├── semanticsloader │ └── ParserTests.scala │ └── testfixtures │ └── SemanticTestCpg.scala ├── joern ├── joern-benchmarks ├── joern-cli ├── JOERN_SLICE.md ├── build.sbt ├── frontends │ ├── c2cpg │ │ ├── README.md │ │ ├── build.sbt │ │ ├── c2cpg.sh │ │ └── src │ │ │ ├── main │ │ │ ├── resources │ │ │ │ └── log4j2.xml │ │ │ └── scala │ │ │ │ ├── io │ │ │ │ └── joern │ │ │ │ │ └── c2cpg │ │ │ │ │ ├── C2Cpg.scala │ │ │ │ │ ├── Main.scala │ │ │ │ │ ├── astcreation │ │ │ │ │ ├── AstCreator.scala │ │ │ │ │ ├── AstCreatorHelper.scala │ │ │ │ │ ├── AstForExpressionsCreator.scala │ │ │ │ │ ├── AstForFunctionsCreator.scala │ │ │ │ │ ├── AstForPrimitivesCreator.scala │ │ │ │ │ ├── AstForStatementsCreator.scala │ │ │ │ │ ├── AstForTypesCreator.scala │ │ │ │ │ ├── AstNodeBuilder.scala │ │ │ │ │ ├── Defines.scala │ │ │ │ │ └── MacroHandler.scala │ │ │ │ │ ├── parser │ │ │ │ │ ├── CdtParser.scala │ │ │ │ │ ├── CustomFileContentProvider.scala │ │ │ │ │ ├── DefaultDefines.scala │ │ │ │ │ ├── FileDefaults.scala │ │ │ │ │ ├── HeaderFileFinder.scala │ │ │ │ │ ├── ParseProblemsLogger.scala │ │ │ │ │ ├── ParserConfig.scala │ │ │ │ │ └── PreprocessorStatementsLogger.scala │ │ │ │ │ ├── passes │ │ │ │ │ ├── AstCreationPass.scala │ │ │ │ │ ├── PreprocessorPass.scala │ │ │ │ │ └── TypeDeclNodePass.scala │ │ │ │ │ └── utils │ │ │ │ │ ├── ExternalCommand.scala │ │ │ │ │ ├── IncludeAutoDiscovery.scala │ │ │ │ │ ├── Report.scala │ │ │ │ │ └── TimeUtils.scala │ │ │ │ └── org │ │ │ │ └── eclipse │ │ │ │ └── cdt │ │ │ │ └── internal │ │ │ │ └── core │ │ │ │ └── parser │ │ │ │ └── scanner │ │ │ │ └── MacroArgumentExtractor.scala │ │ │ ├── test │ │ │ ├── resources │ │ │ │ └── log4j2-test.xml │ │ │ └── scala │ │ │ │ └── io │ │ │ │ └── joern │ │ │ │ └── c2cpg │ │ │ │ ├── config │ │ │ │ └── ConfigTests.scala │ │ │ │ ├── dataflow │ │ │ │ ├── DataFlowTests.scala │ │ │ │ └── ReachingDefTests.scala │ │ │ │ ├── io │ │ │ │ ├── CodeDumperTests.scala │ │ │ │ ├── DumpCpg14Tests.scala │ │ │ │ ├── DumpDdgTests.scala │ │ │ │ ├── DumpPdgTests.scala │ │ │ │ ├── ExcludeTest.scala │ │ │ │ └── dotgenerator │ │ │ │ │ ├── DotAstGeneratorTests.scala │ │ │ │ │ ├── DotCdgGeneratorTests.scala │ │ │ │ │ ├── DotCfgGeneratorTests.scala │ │ │ │ │ └── DotDdgGeneratorTests.scala │ │ │ │ ├── macros │ │ │ │ └── MacroHandlingTests.scala │ │ │ │ ├── passes │ │ │ │ ├── MetaDataPassTests.scala │ │ │ │ ├── PreprocessorPassTests.scala │ │ │ │ ├── ast │ │ │ │ │ ├── AstCreationPassTests.scala │ │ │ │ │ ├── CallConventionsTests.scala │ │ │ │ │ ├── CallTests.scala │ │ │ │ │ ├── ControlStructureTests.scala │ │ │ │ │ ├── DependencyTests.scala │ │ │ │ │ ├── FileTests.scala │ │ │ │ │ ├── HeaderAstCreationPassTests.scala │ │ │ │ │ ├── MemberTests.scala │ │ │ │ │ ├── MetaDataTests.scala │ │ │ │ │ ├── MethodParameterTests.scala │ │ │ │ │ ├── MethodReturnTests.scala │ │ │ │ │ ├── MethodTests.scala │ │ │ │ │ ├── NamespaceBlockTests.scala │ │ │ │ │ └── ProgramStructureTests.scala │ │ │ │ ├── cfg │ │ │ │ │ ├── CfgCreationPassTests.scala │ │ │ │ │ └── MethodCfgLayoutTests.scala │ │ │ │ └── types │ │ │ │ │ ├── ClassTypeTests.scala │ │ │ │ │ ├── EnumTypeTests.scala │ │ │ │ │ ├── NamespaceTypeTests.scala │ │ │ │ │ ├── StructTypeTests.scala │ │ │ │ │ ├── TemplateTypeTests.scala │ │ │ │ │ └── TypeNodePassTests.scala │ │ │ │ ├── querying │ │ │ │ ├── AstQueryTests.scala │ │ │ │ ├── CallGraphQueryTests.scala │ │ │ │ ├── CfgQueryTests.scala │ │ │ │ ├── DdgCfgQueryTests.scala │ │ │ │ ├── LocalQueryTests.scala │ │ │ │ ├── LocationQueryTests.scala │ │ │ │ └── NodeTypeStarterQueryTests.scala │ │ │ │ └── testfixtures │ │ │ │ ├── AbstractPassTest.scala │ │ │ │ ├── CCodeToCpgSuite.scala │ │ │ │ └── DataFlowCodeToCpgSuite.scala │ │ │ └── universal │ │ │ └── bin │ │ │ └── c2cpg.sh │ ├── csharpsrc2cpg │ │ ├── build.sbt │ │ ├── csharpsrc2cpg │ │ ├── csharpsrc2cpg.sh │ │ └── src │ │ │ ├── main │ │ │ ├── resources │ │ │ │ ├── application.conf │ │ │ │ ├── builtin_types.json │ │ │ │ └── log4j2.xml │ │ │ └── scala │ │ │ │ └── io │ │ │ │ └── joern │ │ │ │ └── csharpsrc2cpg │ │ │ │ ├── CSharpSrc2Cpg.scala │ │ │ │ ├── Main.scala │ │ │ │ ├── TypeMap.scala │ │ │ │ ├── astcreation │ │ │ │ ├── AstCreator.scala │ │ │ │ ├── AstCreatorHelper.scala │ │ │ │ ├── AstForDeclarationsCreator.scala │ │ │ │ ├── AstForExpressionsCreator.scala │ │ │ │ ├── AstForPrimitivesCreator.scala │ │ │ │ └── AstForStatementsCreator.scala │ │ │ │ ├── datastructures │ │ │ │ ├── CSharpScope.scala │ │ │ │ └── ScopeType.scala │ │ │ │ ├── parser │ │ │ │ ├── DotNetJsonAst.scala │ │ │ │ ├── DotNetJsonParser.scala │ │ │ │ └── package.scala │ │ │ │ ├── passes │ │ │ │ └── AstCreationPass.scala │ │ │ │ └── utils │ │ │ │ └── DotNetAstGenRunner.scala │ │ │ └── test │ │ │ └── scala │ │ │ └── io │ │ │ └── joern │ │ │ └── csharpsrc2cpg │ │ │ ├── io │ │ │ └── ProjectParseTests.scala │ │ │ ├── passes │ │ │ ├── MetaDataPassTests.scala │ │ │ └── ast │ │ │ │ ├── DeclarationTests.scala │ │ │ │ └── OperatorsTests.scala │ │ │ ├── querying │ │ │ └── ast │ │ │ │ ├── CallTests.scala │ │ │ │ ├── FileTests.scala │ │ │ │ ├── MemberTests.scala │ │ │ │ ├── MethodTests.scala │ │ │ │ ├── NamespaceTests.scala │ │ │ │ ├── ParameterTests.scala │ │ │ │ └── TypeDeclTests.scala │ │ │ └── testfixtures │ │ │ └── CSharpCode2CpgFixture.scala │ ├── ghidra2cpg │ │ ├── README.md │ │ ├── build.sbt │ │ └── src │ │ │ ├── main │ │ │ └── scala │ │ │ │ └── io │ │ │ │ └── joern │ │ │ │ └── ghidra2cpg │ │ │ │ ├── CommandLineConfig.scala │ │ │ │ ├── Ghidra2Cpg.scala │ │ │ │ ├── Main.scala │ │ │ │ ├── passes │ │ │ │ ├── FunctionPass.scala │ │ │ │ ├── JumpPass.scala │ │ │ │ ├── LiteralPass.scala │ │ │ │ ├── MetaDataPass.scala │ │ │ │ ├── NamespacePass.scala │ │ │ │ ├── PCodePass.scala │ │ │ │ ├── arm │ │ │ │ │ └── ArmFunctionPass.scala │ │ │ │ ├── mips │ │ │ │ │ ├── LoHiPass.scala │ │ │ │ │ ├── MipsFunctionPass.scala │ │ │ │ │ └── MipsReturnEdgesPass.scala │ │ │ │ └── x86 │ │ │ │ │ ├── ReturnEdgesPass.scala │ │ │ │ │ └── X86FunctionPass.scala │ │ │ │ ├── processors │ │ │ │ ├── ArmProcessor.scala │ │ │ │ ├── MipsProcessor.scala │ │ │ │ ├── PCodeProcessor.scala │ │ │ │ ├── Processor.scala │ │ │ │ └── X86Processor.scala │ │ │ │ └── utils │ │ │ │ ├── CommandLineConfig.scala │ │ │ │ ├── Decompiler.scala │ │ │ │ ├── PCodeMapper.scala │ │ │ │ └── Utils.scala │ │ │ └── test │ │ │ ├── resources │ │ │ └── log4j2-test.xml │ │ │ ├── scala │ │ │ └── io │ │ │ │ └── joern │ │ │ │ └── ghidra2cpg │ │ │ │ ├── config │ │ │ │ └── ConfigTests.scala │ │ │ │ ├── fixtures │ │ │ │ ├── BinToCpgFixture.scala │ │ │ │ ├── DataFlowBinToCpgSuite.scala │ │ │ │ └── GhidraBinToCpgSuite.scala │ │ │ │ └── querying │ │ │ │ ├── arm │ │ │ │ ├── .gitkeep │ │ │ │ └── CallNodeTests.scala │ │ │ │ ├── mips │ │ │ │ ├── CallArgumentsTest.scala │ │ │ │ ├── CallNodeTests.scala │ │ │ │ ├── DataFlowTests.scala │ │ │ │ └── DataFlowThroughLoHiRegistersTests.scala │ │ │ │ └── x86 │ │ │ │ ├── CFGTests.scala │ │ │ │ ├── CallNodeTests.scala │ │ │ │ ├── DataFlowTests.scala │ │ │ │ ├── FileTests.scala │ │ │ │ ├── LiteralNodeTests.scala │ │ │ │ ├── LocalNodeTests.scala │ │ │ │ ├── MetaDataNodeTests.scala │ │ │ │ ├── MethodNodeTests.scala │ │ │ │ ├── NamespaceBlockTests.scala │ │ │ │ ├── ParameterNodeTests.scala │ │ │ │ ├── RefNodeTests.scala │ │ │ │ └── ReturnNodeTests.scala │ │ │ └── testbinaries │ │ │ ├── coverage │ │ │ ├── linux │ │ │ │ ├── arm │ │ │ │ │ └── 32_git │ │ │ │ ├── mips │ │ │ │ │ └── 32_curl │ │ │ │ └── x86 │ │ │ │ │ ├── 64_git │ │ │ │ │ └── curl │ │ │ ├── testscript.sc │ │ │ └── windows │ │ │ │ ├── 32_curl.exe │ │ │ │ ├── 32_git.exe │ │ │ │ ├── 64_curl.exe │ │ │ │ └── 64_git.exe │ │ │ ├── linux │ │ │ ├── arm │ │ │ │ ├── aarch64_bin │ │ │ │ └── sprintf_test_32 │ │ │ ├── mips │ │ │ │ ├── 84_div_2 │ │ │ │ ├── backdoor.mips │ │ │ │ ├── mips32_memcpy_test.bin │ │ │ │ ├── mips_bin │ │ │ │ └── t1_to_t9 │ │ │ └── x86 │ │ │ │ ├── 32 │ │ │ │ ├── x86_32_bin │ │ │ │ ├── x86_32_bin_dwarf2 │ │ │ │ ├── x86_32_bin_dwarf3 │ │ │ │ ├── x86_32_bin_dwarf4 │ │ │ │ └── x86_32_bin_dwarf5 │ │ │ │ └── 64 │ │ │ │ ├── cfg.bin │ │ │ │ ├── git │ │ │ │ ├── x86_64.bin │ │ │ │ └── xpdf │ │ │ ├── source │ │ │ ├── 84_div_2.mipsel.s │ │ │ ├── backdoor.c │ │ │ ├── cfg.asm │ │ │ ├── sprintf_test.c │ │ │ ├── t1_to_t9.mipsel.s │ │ │ └── test.c │ │ │ └── windows │ │ │ ├── 32 │ │ │ └── git.exe │ │ │ └── 64 │ │ │ └── git.exe │ ├── gosrc2cpg │ │ ├── README.md │ │ ├── build.sbt │ │ ├── gosrc2cpg.sh │ │ └── src │ │ │ ├── main │ │ │ ├── resources │ │ │ │ ├── application.conf │ │ │ │ └── log4j2.xml │ │ │ └── scala │ │ │ │ └── io │ │ │ │ └── joern │ │ │ │ └── gosrc2cpg │ │ │ │ ├── GoSrc2Cpg.scala │ │ │ │ ├── Main.scala │ │ │ │ ├── astcreation │ │ │ │ ├── AstCreator.scala │ │ │ │ ├── AstCreatorHelper.scala │ │ │ │ ├── AstForExpressionCreator.scala │ │ │ │ ├── AstForFunctionsCreator.scala │ │ │ │ ├── AstForGenDeclarationCreator.scala │ │ │ │ ├── AstForLambdaCreator.scala │ │ │ │ ├── AstForMethodCallExpressionCreator.scala │ │ │ │ ├── AstForPackageConstructorCreator.scala │ │ │ │ ├── AstForPrimitivesCreator.scala │ │ │ │ ├── AstForStatementsCreator.scala │ │ │ │ ├── AstForTypeDeclCreator.scala │ │ │ │ ├── CacheBuilder.scala │ │ │ │ └── Defines.scala │ │ │ │ ├── datastructures │ │ │ │ └── GoGlobal.scala │ │ │ │ ├── model │ │ │ │ └── GoMod.scala │ │ │ │ ├── parser │ │ │ │ ├── GoAstJsonParser.scala │ │ │ │ ├── ParserAst.scala │ │ │ │ └── ParserNodeInfo.scala │ │ │ │ ├── passes │ │ │ │ ├── AstCreationPass.scala │ │ │ │ ├── DownloadDependenciesPass.scala │ │ │ │ ├── MethodAndTypeCacheBuilderPass.scala │ │ │ │ └── PackageCtorCreationPass.scala │ │ │ │ └── utils │ │ │ │ ├── AstGenRunner.scala │ │ │ │ └── Constants.scala │ │ │ └── test │ │ │ ├── resources │ │ │ └── log4j2-test.xml │ │ │ └── scala │ │ │ └── io │ │ │ └── joern │ │ │ └── go2cpg │ │ │ ├── dataflow │ │ │ ├── AnonymousFuncDataflowTests.scala │ │ │ ├── ArrayDataflowTests.scala │ │ │ ├── ConditionalsDataflowTests.scala │ │ │ ├── GlobalVariableDataflowTests.scala │ │ │ ├── LoopsDataflowTests.scala │ │ │ ├── MethodAndCallDataFlowTests.scala │ │ │ ├── OperatorDataflowTests.scala │ │ │ ├── ParameterInDataFlowTests.scala │ │ │ ├── SwitchDataflowTests.scala │ │ │ └── TypeDeclConstructorDataflowTests.scala │ │ │ ├── model │ │ │ └── GoModTest.scala │ │ │ ├── passes │ │ │ └── ast │ │ │ │ ├── AnonymousFuncTests.scala │ │ │ │ ├── ArraysAndMapTests.scala │ │ │ │ ├── AssignmentOperatorTests.scala │ │ │ │ ├── BuiltInMethodCallTests.scala │ │ │ │ ├── ConditionalsTests.scala │ │ │ │ ├── ConstructorCallTests.scala │ │ │ │ ├── DeclarationsTests.scala │ │ │ │ ├── DownloadDependencyTest.scala │ │ │ │ ├── ExpressionsTests.scala │ │ │ │ ├── FieldAccessTests.scala │ │ │ │ ├── FileTests.scala │ │ │ │ ├── GenericsTests.scala │ │ │ │ ├── GlobalVariableAndConstantTests.scala │ │ │ │ ├── ImportTests.scala │ │ │ │ ├── LiteralCpgTests.scala │ │ │ │ ├── LoopsTests.scala │ │ │ │ ├── MetaDataTests.scala │ │ │ │ ├── MethodCallTests.scala │ │ │ │ ├── MethodTests.scala │ │ │ │ ├── NamespaceBlockTests.scala │ │ │ │ ├── OperatorsTests.scala │ │ │ │ ├── SwitchTests.scala │ │ │ │ ├── TypeDeclMembersAndMemberMethodsTest.scala │ │ │ │ ├── TypeDeclMethodCallTests.scala │ │ │ │ ├── TypeDeclTests.scala │ │ │ │ ├── TypeFullNameTests.scala │ │ │ │ └── VariableReferencingTests.scala │ │ │ └── testfixtures │ │ │ └── GoCodeToCpgSuite.scala │ ├── ida2cpg │ │ ├── README.md │ │ ├── build.sbt │ │ ├── ida2cpg │ │ ├── ida2cpg.sh │ │ └── src │ │ │ ├── main │ │ │ ├── resources │ │ │ │ ├── idascript │ │ │ │ │ ├── IDA9 │ │ │ │ │ │ ├── extractor.py │ │ │ │ │ │ ├── helper.so.json │ │ │ │ │ │ ├── helper.so.type.json │ │ │ │ │ │ └── ida-extractor.py │ │ │ │ │ ├── helper.so.json │ │ │ │ │ ├── helper.so.type.json │ │ │ │ │ ├── ida-ast-dumper.py │ │ │ │ │ └── ida-extractor.py │ │ │ │ └── log4j2.xml │ │ │ └── scala │ │ │ │ └── io │ │ │ │ └── joern │ │ │ │ └── ida2cpg │ │ │ │ ├── Ida2Cpg.scala │ │ │ │ ├── Main.scala │ │ │ │ ├── astcreation │ │ │ │ └── AstCreator.scala │ │ │ │ ├── parser │ │ │ │ ├── ClassParser.scala │ │ │ │ ├── Domain.scala │ │ │ │ └── HexraysParser.scala │ │ │ │ ├── passes │ │ │ │ ├── AnyTypePass.scala │ │ │ │ ├── AstCreationPass.scala │ │ │ │ ├── AstParentInfoPass.scala │ │ │ │ ├── ClosureRefPass.scala │ │ │ │ ├── DependencyPass.scala │ │ │ │ ├── DependencySymbolsPass.scala │ │ │ │ └── LocalCreationPass.scala │ │ │ │ └── utils │ │ │ │ ├── ArrayIndexTracker.scala │ │ │ │ ├── Scope.scala │ │ │ │ └── ScopeElement.scala │ │ │ └── test │ │ │ └── resources │ │ │ └── t1.c │ ├── javasrc2cpg │ │ ├── README.md │ │ ├── build.sbt │ │ ├── javasrc2cpg │ │ └── src │ │ │ ├── main │ │ │ ├── resources │ │ │ │ └── log4j2.xml │ │ │ └── scala │ │ │ │ └── io │ │ │ │ └── joern │ │ │ │ └── javasrc2cpg │ │ │ │ ├── JavaSrc2Cpg.scala │ │ │ │ ├── Main.scala │ │ │ │ ├── astcreation │ │ │ │ ├── AstCreator.scala │ │ │ │ ├── declarations │ │ │ │ │ ├── AstForDeclarationsCreator.scala │ │ │ │ │ ├── AstForMethodsCreator.scala │ │ │ │ │ └── AstForTypeDeclsCreator.scala │ │ │ │ ├── expressions │ │ │ │ │ ├── AstForCallExpressionsCreator.scala │ │ │ │ │ ├── AstForExpressionsCreator.scala │ │ │ │ │ ├── AstForLambdasCreator.scala │ │ │ │ │ ├── AstForNameExpressionsCreator.scala │ │ │ │ │ ├── AstForSimpleExpressionsCreator.scala │ │ │ │ │ └── AstForVarDeclAndAssignsCreator.scala │ │ │ │ └── statements │ │ │ │ │ ├── AstForForLoopsCreator.scala │ │ │ │ │ ├── AstForSimpleStatementsCreator.scala │ │ │ │ │ └── AstForStatementsCreator.scala │ │ │ │ ├── jartypereader │ │ │ │ ├── JarTypeReader.scala │ │ │ │ ├── descriptorparser │ │ │ │ │ ├── DescriptorParser.scala │ │ │ │ │ ├── TokenParser.scala │ │ │ │ │ └── TypeParser.scala │ │ │ │ └── model │ │ │ │ │ └── Model.scala │ │ │ │ ├── jpastprinter │ │ │ │ └── JavaParserAstPrinter.scala │ │ │ │ ├── passes │ │ │ │ ├── AstCreationPass.scala │ │ │ │ ├── ConfigFileCreationPass.scala │ │ │ │ ├── JavaTypeHintCallLinker.scala │ │ │ │ ├── JavaTypeRecoveryPassGenerator.scala │ │ │ │ └── TypeInferencePass.scala │ │ │ │ ├── scope │ │ │ │ ├── JavaScopeElement.scala │ │ │ │ ├── Scope.scala │ │ │ │ └── TypeDeclContainer.scala │ │ │ │ ├── typesolvers │ │ │ │ ├── EagerSourceTypeSolver.scala │ │ │ │ ├── JmodClassPath.scala │ │ │ │ ├── NonCachingClassPool.scala │ │ │ │ ├── SimpleCombinedTypeSolver.scala │ │ │ │ ├── TypeInfoCalculator.scala │ │ │ │ ├── TypeSizeReducer.scala │ │ │ │ └── noncaching │ │ │ │ │ └── JdkJarTypeSolver.scala │ │ │ │ └── util │ │ │ │ ├── BindingTable.scala │ │ │ │ ├── BindingTableAdapterImpls.scala │ │ │ │ ├── Delombok.scala │ │ │ │ ├── NameConstants.scala │ │ │ │ ├── SourceParser.scala │ │ │ │ ├── SourceRootFinder.scala │ │ │ │ └── Util.scala │ │ │ └── test │ │ │ ├── java │ │ │ └── io │ │ │ │ └── joern │ │ │ │ └── javasrc2cpg │ │ │ │ └── jartypereader │ │ │ │ └── testcode │ │ │ │ ├── genericclasses │ │ │ │ └── Test.java │ │ │ │ ├── genericmethods │ │ │ │ └── Test.java │ │ │ │ ├── nongenericinterface │ │ │ │ └── Test.java │ │ │ │ ├── nongenericwithsuperclass │ │ │ │ └── Test.java │ │ │ │ ├── overloadedmethods │ │ │ │ └── Test.java │ │ │ │ ├── simplegeneric │ │ │ │ └── Test.java │ │ │ │ ├── simplenongeneric │ │ │ │ └── Test.java │ │ │ │ └── wildcards │ │ │ │ └── Test.java │ │ │ ├── resources │ │ │ ├── Deps.jar │ │ │ ├── config_tests │ │ │ │ ├── application.conf │ │ │ │ ├── basic.jsp │ │ │ │ ├── basic.properties │ │ │ │ ├── basic.tf │ │ │ │ ├── basic.tfvars │ │ │ │ ├── basic.vm │ │ │ │ ├── basic.yaml │ │ │ │ ├── basic.yml │ │ │ │ ├── batis │ │ │ │ │ └── conf.xml │ │ │ │ ├── build.gradle │ │ │ │ ├── build.gradle.kts │ │ │ │ ├── dwr.xml │ │ │ │ ├── faces-config.xml │ │ │ │ ├── nested │ │ │ │ │ └── nested.properties │ │ │ │ ├── no-conf-1.xml │ │ │ │ ├── no-conf-2.conf │ │ │ │ ├── routes │ │ │ │ ├── struts.xml │ │ │ │ └── web.xml │ │ │ └── log4j2-test.xml │ │ │ └── scala │ │ │ └── io │ │ │ └── joern │ │ │ └── javasrc2cpg │ │ │ ├── JavaSrc2CpgTestContext.scala │ │ │ ├── config │ │ │ └── ConfigTests.scala │ │ │ ├── jartypereader │ │ │ └── JarTypeReaderTests.scala │ │ │ ├── passes │ │ │ └── ConfigFileCreationPassTests.scala │ │ │ ├── querying │ │ │ ├── AnnotationTests.scala │ │ │ ├── AnonymousClassTests.scala │ │ │ ├── ArithmeticOperationsTests.scala │ │ │ ├── ArrayTests.scala │ │ │ ├── BindingTests.scala │ │ │ ├── BooleanOperationsTests.scala │ │ │ ├── CallGraphTests.scala │ │ │ ├── CallTests.scala │ │ │ ├── CfgTests.scala │ │ │ ├── ClassLoaderTypeTests.scala │ │ │ ├── ConditionalTests.scala │ │ │ ├── ConstructorInvocationTests.scala │ │ │ ├── ControlStructureTests.scala │ │ │ ├── EnumTests.scala │ │ │ ├── FieldAccessTests.scala │ │ │ ├── FileTests.scala │ │ │ ├── GenericsTests.scala │ │ │ ├── ImportTests.scala │ │ │ ├── InferenceJarTests.scala │ │ │ ├── LambdaTests.scala │ │ │ ├── LiteralTests.scala │ │ │ ├── LocalClassTests.scala │ │ │ ├── LocalTests.scala │ │ │ ├── LombokTests.scala │ │ │ ├── MemberTests.scala │ │ │ ├── MetaDataTests.scala │ │ │ ├── MethodParameterTests.scala │ │ │ ├── MethodReturnTests.scala │ │ │ ├── MethodTests.scala │ │ │ ├── NamespaceBlockTests.scala │ │ │ ├── OffsetTests.scala │ │ │ ├── ScopeTests.scala │ │ │ ├── SpecialOperatorTests.scala │ │ │ ├── SynchronizedTests.scala │ │ │ ├── TypeDeclTests.scala │ │ │ ├── TypeInferenceTests.scala │ │ │ ├── TypeTests.scala │ │ │ ├── VarDeclTests.scala │ │ │ └── dataflow │ │ │ │ ├── ArrayTests.scala │ │ │ │ ├── FunctionCallTests.scala │ │ │ │ ├── IfTests.scala │ │ │ │ ├── LambdaTests.scala │ │ │ │ ├── LoopTests.scala │ │ │ │ ├── MemberTests.scala │ │ │ │ ├── MethodReturnTests.scala │ │ │ │ ├── ObjectTests.scala │ │ │ │ ├── OperatorTests.scala │ │ │ │ ├── ReturnTests.scala │ │ │ │ ├── SemanticTests.scala │ │ │ │ ├── StaticMemberTests.scala │ │ │ │ ├── SwitchTests.scala │ │ │ │ └── TryTests.scala │ │ │ ├── testfixtures │ │ │ ├── JavaDataflowFixture.scala │ │ │ └── JavaSrcCodeToCpgFixture.scala │ │ │ └── util │ │ │ ├── ScopeTests.scala │ │ │ └── SourceRootFinderTests.scala │ ├── jimple2cpg │ │ ├── AUTHORS │ │ ├── README.md │ │ ├── build.sbt │ │ ├── jimple2cpg │ │ └── src │ │ │ ├── main │ │ │ └── scala │ │ │ │ └── io │ │ │ │ └── joern │ │ │ │ └── jimple2cpg │ │ │ │ ├── Jimple2Cpg.scala │ │ │ │ ├── Main.scala │ │ │ │ ├── astcreation │ │ │ │ ├── AstCreator.scala │ │ │ │ ├── declarations │ │ │ │ │ ├── AstForDeclarationsCreator.scala │ │ │ │ │ ├── AstForMethodsCreator.scala │ │ │ │ │ └── AstForTypeDeclsCreator.scala │ │ │ │ ├── expressions │ │ │ │ │ └── AstForExpressionsCreator.scala │ │ │ │ └── statements │ │ │ │ │ └── AstForStatementsCreator.scala │ │ │ │ ├── passes │ │ │ │ ├── AstCreationPass.scala │ │ │ │ ├── DeclarationRefPass.scala │ │ │ │ └── SootAstCreationPass.scala │ │ │ │ └── util │ │ │ │ └── ProgramHandlingUtil.scala │ │ │ └── test │ │ │ ├── resources │ │ │ ├── log4j2-test.xml │ │ │ ├── project │ │ │ │ └── build.properties │ │ │ └── unpacking │ │ │ │ ├── HelloWorld.jar │ │ │ │ ├── NestedHelloWorld.jar │ │ │ │ ├── helloworld │ │ │ │ ├── Bar.class │ │ │ │ └── Foo.class │ │ │ │ └── slippy.zip │ │ │ └── scala │ │ │ └── io │ │ │ └── joern │ │ │ └── jimple2cpg │ │ │ ├── config │ │ │ └── ConfigTests.scala │ │ │ ├── querying │ │ │ ├── AnnotationTests.scala │ │ │ ├── ArithmeticOperationsTests.scala │ │ │ ├── ArrayTests.scala │ │ │ ├── CallTests.scala │ │ │ ├── CfgTests.scala │ │ │ ├── ConstructorInvocationTests.scala │ │ │ ├── DynamicCallGraphTests.scala │ │ │ ├── EnumTests.scala │ │ │ ├── FieldAccessTests.scala │ │ │ ├── FileTests.scala │ │ │ ├── IfGotoTests.scala │ │ │ ├── ImplementsInterfaceTests.scala │ │ │ ├── InterfaceTests.scala │ │ │ ├── LocalTests.scala │ │ │ ├── MemberTests.scala │ │ │ ├── MetaDataTests.scala │ │ │ ├── MethodParameterTests.scala │ │ │ ├── MethodReturnTests.scala │ │ │ ├── MethodTests.scala │ │ │ ├── NamespaceBlockTests.scala │ │ │ ├── ReflectionTests.scala │ │ │ ├── SpecialOperatorTests.scala │ │ │ ├── StaticCallGraphTests.scala │ │ │ ├── SwitchTests.scala │ │ │ ├── SynchronizedTests.scala │ │ │ ├── TypeDeclTests.scala │ │ │ ├── TypeTests.scala │ │ │ └── dataflow │ │ │ │ ├── ArrayTests.scala │ │ │ │ ├── FunctionCallTests.scala │ │ │ │ ├── IfTests.scala │ │ │ │ ├── LoopTests.scala │ │ │ │ ├── ObjectTests.scala │ │ │ │ ├── OperatorTests.scala │ │ │ │ ├── SemanticTests.scala │ │ │ │ ├── StaticMemberTests.scala │ │ │ │ ├── SwitchTests.scala │ │ │ │ └── TryTests.scala │ │ │ ├── testfixtures │ │ │ ├── JimpleCodeToCpgFixture.scala │ │ │ └── JimpleDataflowCodeToCpgSuite.scala │ │ │ └── unpacking │ │ │ └── JarUnpackingTests.scala │ ├── jssrc2cpg │ │ ├── README.md │ │ ├── build.sbt │ │ ├── jssrc2cpg.sh │ │ └── src │ │ │ ├── main │ │ │ ├── resources │ │ │ │ ├── application.conf │ │ │ │ └── log4j2.xml │ │ │ └── scala │ │ │ │ └── io │ │ │ │ └── joern │ │ │ │ └── jssrc2cpg │ │ │ │ ├── JsSrc2Cpg.scala │ │ │ │ ├── Main.scala │ │ │ │ ├── astcreation │ │ │ │ ├── AstCreator.scala │ │ │ │ ├── AstCreatorHelper.scala │ │ │ │ ├── AstForDeclarationsCreator.scala │ │ │ │ ├── AstForExpressionsCreator.scala │ │ │ │ ├── AstForFunctionsCreator.scala │ │ │ │ ├── AstForPrimitivesCreator.scala │ │ │ │ ├── AstForStatementsCreator.scala │ │ │ │ ├── AstForTemplateDomCreator.scala │ │ │ │ ├── AstForTypesCreator.scala │ │ │ │ ├── AstNodeBuilder.scala │ │ │ │ └── TypeHelper.scala │ │ │ │ ├── datastructures │ │ │ │ ├── PendingReference.scala │ │ │ │ ├── ResolvedReference.scala │ │ │ │ ├── Scope.scala │ │ │ │ ├── ScopeElement.scala │ │ │ │ └── ScopeType.scala │ │ │ │ ├── parser │ │ │ │ ├── BabelAst.scala │ │ │ │ ├── BabelJsonParser.scala │ │ │ │ └── BabelNodeInfo.scala │ │ │ │ ├── passes │ │ │ │ ├── AstCreationPass.scala │ │ │ │ ├── ConfigPass.scala │ │ │ │ ├── ConstClosurePass.scala │ │ │ │ ├── Defines.scala │ │ │ │ ├── DependenciesPass.scala │ │ │ │ ├── EcmaBuiltins.scala │ │ │ │ ├── GlobalBuiltins.scala │ │ │ │ ├── ImportsPass.scala │ │ │ │ ├── JavaScriptImportResolverPass.scala │ │ │ │ ├── JavaScriptInheritanceNamePass.scala │ │ │ │ ├── JavaScriptMetaDataPass.scala │ │ │ │ ├── JavaScriptTypeHintCallLinker.scala │ │ │ │ ├── JavaScriptTypeNodePass.scala │ │ │ │ ├── JavaScriptTypeRecovery.scala │ │ │ │ └── PrivateKeyFilePass.scala │ │ │ │ ├── preprocessing │ │ │ │ └── EjsPreprocessor.scala │ │ │ │ └── utils │ │ │ │ ├── AstGenRunner.scala │ │ │ │ └── PackageJsonParser.scala │ │ │ ├── test │ │ │ ├── resources │ │ │ │ └── log4j2-test.xml │ │ │ └── scala │ │ │ │ └── io │ │ │ │ └── joern │ │ │ │ └── jssrc2cpg │ │ │ │ ├── config │ │ │ │ └── ConfigTests.scala │ │ │ │ ├── dataflow │ │ │ │ └── DataflowTest.scala │ │ │ │ ├── io │ │ │ │ ├── CodeDumperTest.scala │ │ │ │ ├── ExcludeTest.scala │ │ │ │ ├── MinifiedFileDetectionTest.scala │ │ │ │ ├── ProjectParseTest.scala │ │ │ │ └── TranspiledFileDetectionTest.scala │ │ │ │ ├── passes │ │ │ │ ├── AbstractDomPassTest.scala │ │ │ │ ├── AbstractPassTest.scala │ │ │ │ ├── CallLinkerPassTest.scala │ │ │ │ ├── ConfigPassTest.scala │ │ │ │ ├── ConstClosurePassTests.scala │ │ │ │ ├── DependenciesPassTest.scala │ │ │ │ ├── ImportsPassTests.scala │ │ │ │ ├── InheritanceFullNamePassTests.scala │ │ │ │ ├── JsMetaDataPassTest.scala │ │ │ │ ├── RequirePassTests.scala │ │ │ │ ├── TypeRecoveryPassTests.scala │ │ │ │ ├── ast │ │ │ │ │ ├── DependencyAstCreationPassTest.scala │ │ │ │ │ ├── JsClassesAstCreationPassTest.scala │ │ │ │ │ ├── MixedAstCreationPassTest.scala │ │ │ │ │ ├── SimpleAstCreationPassTest.scala │ │ │ │ │ ├── TemplateDomAstCreationPassTest.scala │ │ │ │ │ ├── TsAstCreationPassTest.scala │ │ │ │ │ ├── TsClassesAstCreationPassTest.scala │ │ │ │ │ ├── TsDecoratorAstCreationPassTest.scala │ │ │ │ │ └── VueJsDomAstCreationPassTest.scala │ │ │ │ └── cfg │ │ │ │ │ ├── DependencyCfgCreationPassTest.scala │ │ │ │ │ ├── JsClassesCfgCreationPassTest.scala │ │ │ │ │ ├── MixedCfgCreationPassTest.scala │ │ │ │ │ └── SimpleCfgCreationPassTest.scala │ │ │ │ ├── preprocessing │ │ │ │ ├── EjsPassTest.scala │ │ │ │ └── EjsPreprocessorTest.scala │ │ │ │ ├── slicing │ │ │ │ ├── JsUsageSliceTests.scala │ │ │ │ └── TsUsageSliceTests.scala │ │ │ │ ├── testfixtures │ │ │ │ ├── DataFlowCodeToCpgSuite.scala │ │ │ │ ├── JsCfgTestCpg.scala │ │ │ │ └── JsSrc2CpgFrontend.scala │ │ │ │ └── types │ │ │ │ └── TSTypesTest.scala │ │ │ └── universal │ │ │ └── bin │ │ │ └── jssrc2cpg.sh │ ├── kotlin2cpg │ │ ├── .scalafmt.conf │ │ ├── build.sbt │ │ ├── jar_from_aar.sh │ │ ├── kotlin2cpg │ │ ├── kotlin2cpg.sh │ │ └── src │ │ │ ├── main │ │ │ ├── resources │ │ │ │ ├── jars │ │ │ │ │ ├── kotlin-stdlib-1.9.0.jar │ │ │ │ │ ├── kotlin-stdlib-common-1.9.0.jar │ │ │ │ │ └── kotlin-stdlib-jdk8-1.9.0.jar │ │ │ │ └── log4j2.xml │ │ │ └── scala │ │ │ │ └── io │ │ │ │ └── joern │ │ │ │ └── kotlin2cpg │ │ │ │ ├── Constants.scala │ │ │ │ ├── Kotlin2Cpg.scala │ │ │ │ ├── Main.scala │ │ │ │ ├── ast │ │ │ │ ├── AstCreator.scala │ │ │ │ ├── AstForDeclarationsCreator.scala │ │ │ │ ├── AstForExpressionsCreator.scala │ │ │ │ ├── AstForFunctionsCreator.scala │ │ │ │ ├── AstForPrimitivesCreator.scala │ │ │ │ ├── AstForStatementsCreator.scala │ │ │ │ └── Nodes.scala │ │ │ │ ├── compiler │ │ │ │ └── CompilerAPI.scala │ │ │ │ ├── datastructures │ │ │ │ └── Scope.scala │ │ │ │ ├── files │ │ │ │ └── SourceFilesPicker.scala │ │ │ │ ├── interop │ │ │ │ └── JavasrcInterop.scala │ │ │ │ ├── jar4import │ │ │ │ ├── Service.scala │ │ │ │ └── UsesService.scala │ │ │ │ ├── passes │ │ │ │ ├── AstCreationPass.scala │ │ │ │ ├── ConfigPass.scala │ │ │ │ ├── DependenciesFromMavenCoordinatesPass.scala │ │ │ │ ├── KotlinTypeHintCallLinker.scala │ │ │ │ └── KotlinTypeRecoveryPassGenerator.scala │ │ │ │ ├── psi │ │ │ │ └── PsiUtils.scala │ │ │ │ ├── types │ │ │ │ ├── CallKinds.scala │ │ │ │ ├── ContentSourcesPicker.scala │ │ │ │ ├── DefaultTypeInfoProvider.scala │ │ │ │ ├── NameReferenceKinds.scala │ │ │ │ ├── TypeConstants.scala │ │ │ │ ├── TypeInfoProvider.scala │ │ │ │ └── TypeRenderer.scala │ │ │ │ └── utils │ │ │ │ └── PathUtils.scala │ │ │ └── test │ │ │ ├── resources │ │ │ ├── code │ │ │ │ ├── barebone_android_app │ │ │ │ │ ├── app │ │ │ │ │ │ ├── build.gradle │ │ │ │ │ │ ├── proguard-rules.pro │ │ │ │ │ │ └── src │ │ │ │ │ │ │ ├── androidTest │ │ │ │ │ │ │ └── java │ │ │ │ │ │ │ │ └── com │ │ │ │ │ │ │ │ └── example │ │ │ │ │ │ │ │ └── myapplication │ │ │ │ │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ │ │ │ │ ├── main │ │ │ │ │ │ │ ├── AndroidManifest.xml │ │ │ │ │ │ │ ├── java │ │ │ │ │ │ │ │ └── com │ │ │ │ │ │ │ │ │ └── example │ │ │ │ │ │ │ │ │ └── myapplication │ │ │ │ │ │ │ │ │ └── MainActivity.kt │ │ │ │ │ │ │ └── res │ │ │ │ │ │ │ │ ├── drawable-v24 │ │ │ │ │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ │ │ │ │ ├── drawable │ │ │ │ │ │ │ │ └── ic_launcher_background.xml │ │ │ │ │ │ │ │ ├── layout │ │ │ │ │ │ │ │ └── activity_main.xml │ │ │ │ │ │ │ │ ├── mipmap-anydpi-v26 │ │ │ │ │ │ │ │ ├── ic_launcher.xml │ │ │ │ │ │ │ │ └── ic_launcher_round.xml │ │ │ │ │ │ │ │ ├── mipmap-hdpi │ │ │ │ │ │ │ │ ├── ic_launcher.webp │ │ │ │ │ │ │ │ └── ic_launcher_round.webp │ │ │ │ │ │ │ │ ├── mipmap-mdpi │ │ │ │ │ │ │ │ ├── ic_launcher.webp │ │ │ │ │ │ │ │ └── ic_launcher_round.webp │ │ │ │ │ │ │ │ ├── mipmap-xhdpi │ │ │ │ │ │ │ │ ├── ic_launcher.webp │ │ │ │ │ │ │ │ └── ic_launcher_round.webp │ │ │ │ │ │ │ │ ├── mipmap-xxhdpi │ │ │ │ │ │ │ │ ├── ic_launcher.webp │ │ │ │ │ │ │ │ └── ic_launcher_round.webp │ │ │ │ │ │ │ │ ├── mipmap-xxxhdpi │ │ │ │ │ │ │ │ ├── ic_launcher.webp │ │ │ │ │ │ │ │ └── ic_launcher_round.webp │ │ │ │ │ │ │ │ ├── values-night │ │ │ │ │ │ │ │ └── themes.xml │ │ │ │ │ │ │ │ ├── values │ │ │ │ │ │ │ │ ├── colors.xml │ │ │ │ │ │ │ │ ├── strings.xml │ │ │ │ │ │ │ │ └── themes.xml │ │ │ │ │ │ │ │ └── xml │ │ │ │ │ │ │ │ └── network_security_config.xml │ │ │ │ │ │ │ └── test │ │ │ │ │ │ │ └── java │ │ │ │ │ │ │ └── com │ │ │ │ │ │ │ └── example │ │ │ │ │ │ │ └── myapplication │ │ │ │ │ │ │ └── ExampleUnitTest.kt │ │ │ │ │ ├── build.gradle │ │ │ │ │ ├── gradle.properties │ │ │ │ │ ├── gradle │ │ │ │ │ │ └── wrapper │ │ │ │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ │ │ │ └── gradle-wrapper.properties │ │ │ │ │ ├── gradlew │ │ │ │ │ ├── gradlew.bat │ │ │ │ │ ├── local.properties │ │ │ │ │ └── settings.gradle │ │ │ │ ├── ktmin │ │ │ │ │ ├── README │ │ │ │ │ ├── build.gradle │ │ │ │ │ ├── dependencies │ │ │ │ │ │ ├── annotations-13.0.jar │ │ │ │ │ │ ├── gson-2.9.0.jar │ │ │ │ │ │ ├── kotlin-stdlib-1.5.31.jar │ │ │ │ │ │ ├── kotlin-stdlib-common-1.5.31.jar │ │ │ │ │ │ ├── kotlin-stdlib-jdk7-1.5.31.jar │ │ │ │ │ │ └── kotlin-stdlib-jdk8-1.5.31.jar │ │ │ │ │ ├── settings.gradle │ │ │ │ │ └── src │ │ │ │ │ │ └── main │ │ │ │ │ │ └── kotlin │ │ │ │ │ │ └── ktmin │ │ │ │ │ │ └── App.kt │ │ │ │ ├── with_kotlin_all_open_plugin │ │ │ │ │ └── Hello.kt │ │ │ │ └── with_kotlin_script │ │ │ │ │ ├── build.gradle.kts │ │ │ │ │ └── src │ │ │ │ │ └── hello_world.kt │ │ │ ├── jars │ │ │ │ ├── http4k-core-4.14.1.4.jar │ │ │ │ └── javalin-4.1.1.jar │ │ │ └── log4j2-test.xml │ │ │ └── scala │ │ │ └── io │ │ │ └── joern │ │ │ └── kotlin2cpg │ │ │ ├── DefaultRegisteredTypesTests.scala │ │ │ ├── SourceFilesPickerTests.scala │ │ │ ├── compiler │ │ │ ├── CompilerAPITests.scala │ │ │ └── JavaInteroperabilityTests.scala │ │ │ ├── config │ │ │ └── ConfigTests.scala │ │ │ ├── dataflow │ │ │ ├── CollectionsTests.scala │ │ │ ├── ControlExpressionsTests.scala │ │ │ ├── DestructuringTests.scala │ │ │ ├── ExtensionFnsTests.scala │ │ │ ├── ForTests.scala │ │ │ ├── FunctionCallTests.scala │ │ │ ├── GenericsTests.scala │ │ │ ├── IfTests.scala │ │ │ ├── InterproceduralTests.scala │ │ │ ├── JavaInteroperabilityTests.scala │ │ │ ├── LambdaTests.scala │ │ │ ├── ObjectExpressionsAndDeclarationsTests.scala │ │ │ ├── OperatorTests.scala │ │ │ ├── ScopeFunctionsTests.scala │ │ │ ├── SimpleDataFlowTests.scala │ │ │ ├── TryTests.scala │ │ │ ├── TypeDeclTests.scala │ │ │ ├── WhenTests.scala │ │ │ └── WhileTests.scala │ │ │ ├── postProcessing │ │ │ └── TypeRecoveryPassTest.scala │ │ │ ├── project │ │ │ └── build.properties │ │ │ ├── querying │ │ │ ├── AnnotationsTests.scala │ │ │ ├── AnonymousFunctionsTests.scala │ │ │ ├── ArithmeticOperationsTests.scala │ │ │ ├── ArrayAccessExprsTests.scala │ │ │ ├── AssignmentTests.scala │ │ │ ├── BooleanLogicTests.scala │ │ │ ├── CallGraphTests.scala │ │ │ ├── CallTests.scala │ │ │ ├── CallableReferenceTests.scala │ │ │ ├── CallbackTests.scala │ │ │ ├── CallsToConstructorTests.scala │ │ │ ├── CallsToFieldAccessTests.scala │ │ │ ├── CfgTests.scala │ │ │ ├── ClassLiteralTests.scala │ │ │ ├── CollectionAccessTests.scala │ │ │ ├── CompanionObjectTests.scala │ │ │ ├── ComparisonOperatorTests.scala │ │ │ ├── ComplexExpressionsTests.scala │ │ │ ├── ConfigFileTests.scala │ │ │ ├── ConstructorTests.scala │ │ │ ├── ControlStructureTests.scala │ │ │ ├── DataClassTests.scala │ │ │ ├── DefaultContentRootsTests.scala │ │ │ ├── DelegatedPropertiesTests.scala │ │ │ ├── DestructuringTests.scala │ │ │ ├── EnumTests.scala │ │ │ ├── ExtensionTests.scala │ │ │ ├── FieldAccessTests.scala │ │ │ ├── FileTests.scala │ │ │ ├── GenericsTests.scala │ │ │ ├── GlobalsTests.scala │ │ │ ├── IdentifierTests.scala │ │ │ ├── IfExpressionsTests.scala │ │ │ ├── ImportTests.scala │ │ │ ├── InnerClassesTests.scala │ │ │ ├── LabeledExpressionsTests.scala │ │ │ ├── LambdaTests.scala │ │ │ ├── LazyBlocksTests.scala │ │ │ ├── LiteralTests.scala │ │ │ ├── LocalClassesTests.scala │ │ │ ├── LocalFunctionsTests.scala │ │ │ ├── LocalTests.scala │ │ │ ├── MemberTests.scala │ │ │ ├── MetaDataTests.scala │ │ │ ├── MethodParameterTests.scala │ │ │ ├── MethodReturnTests.scala │ │ │ ├── MethodTests.scala │ │ │ ├── ModifierTests.scala │ │ │ ├── NamespaceBlockTests.scala │ │ │ ├── ObjectDeclarationsTests.scala │ │ │ ├── ObjectExpressionTests.scala │ │ │ ├── ParenthesizedExpressionTests.scala │ │ │ ├── QualifiedExpressionsTests.scala │ │ │ ├── ResolutionErrorsTests.scala │ │ │ ├── SafeQualifiedExpressionsTests.scala │ │ │ ├── ScopeFunctionTests.scala │ │ │ ├── SpecialOperatorsTests.scala │ │ │ ├── StdLibTests.scala │ │ │ ├── StringInterpolationTests.scala │ │ │ ├── SuperTests.scala │ │ │ ├── ThisTests.scala │ │ │ ├── TryExpressionsTests.scala │ │ │ ├── TypeAliasTests.scala │ │ │ ├── TypeDeclTests.scala │ │ │ ├── TypeTests.scala │ │ │ ├── UnaryOpTests.scala │ │ │ └── WhenExpressionTests.scala │ │ │ ├── testfixtures │ │ │ └── KotlinCodeToCpgFixture.scala │ │ │ ├── types │ │ │ └── KotlinScriptFilteringTests.scala │ │ │ └── validation │ │ │ ├── ArgumentIndexTests.scala │ │ │ ├── DefaultImportsTests.scala │ │ │ ├── IdentifierReferencesTests.scala │ │ │ ├── MissingTypeInformationTests.scala │ │ │ ├── NestedDeclarationTests.scala │ │ │ ├── PrimitiveArrayTypeMappingTests.scala │ │ │ ├── UnitTypeMappingTests.scala │ │ │ └── ValidationTests.scala │ ├── php2cpg │ │ ├── README.md │ │ ├── build.sbt │ │ ├── php-parse.bat │ │ ├── php2cpg │ │ └── src │ │ │ ├── main │ │ │ ├── resources │ │ │ │ ├── builtin_functions.txt │ │ │ │ ├── known_function_signatures.txt │ │ │ │ ├── log4j2.xml │ │ │ │ └── php.ini │ │ │ └── scala │ │ │ │ └── io │ │ │ │ └── joern │ │ │ │ └── php2cpg │ │ │ │ ├── Main.scala │ │ │ │ ├── Php2Cpg.scala │ │ │ │ ├── astcreation │ │ │ │ ├── AstCreator.scala │ │ │ │ └── PhpBuiltins.scala │ │ │ │ ├── parser │ │ │ │ ├── Domain.scala │ │ │ │ └── PhpParser.scala │ │ │ │ ├── passes │ │ │ │ ├── AnyTypePass.scala │ │ │ │ ├── AstCreationPass.scala │ │ │ │ ├── AstParentInfoPass.scala │ │ │ │ ├── ClosureRefPass.scala │ │ │ │ ├── LocalCreationPass.scala │ │ │ │ ├── PhpSetKnownTypes.scala │ │ │ │ └── PhpTypeRecovery.scala │ │ │ │ └── utils │ │ │ │ ├── ArrayIndexTracker.scala │ │ │ │ ├── Scope.scala │ │ │ │ └── ScopeElement.scala │ │ │ └── test │ │ │ ├── resources │ │ │ └── builtin_functions.txt │ │ │ └── scala │ │ │ └── io │ │ │ └── joern │ │ │ └── php2cpg │ │ │ ├── config │ │ │ └── ConfigTests.scala │ │ │ ├── dataflow │ │ │ └── IntraMethodDataflowTests.scala │ │ │ ├── passes │ │ │ ├── CfgCreationPassTests.scala │ │ │ └── PhpTypeRecoveryPassTests.scala │ │ │ ├── querying │ │ │ ├── ArrayTests.scala │ │ │ ├── CallTests.scala │ │ │ ├── CfgTests.scala │ │ │ ├── ClosureTests.scala │ │ │ ├── CommentTests.scala │ │ │ ├── ControlStructureTests.scala │ │ │ ├── FieldAccessTests.scala │ │ │ ├── LocalTests.scala │ │ │ ├── MemberTests.scala │ │ │ ├── MethodTests.scala │ │ │ ├── NamespaceTests.scala │ │ │ ├── OperatorTests.scala │ │ │ ├── PocTest.scala │ │ │ ├── ScalarTests.scala │ │ │ ├── TypeDeclTests.scala │ │ │ ├── TypeNodeTests.scala │ │ │ └── UseTests.scala │ │ │ └── testfixtures │ │ │ └── PhpCode2CpgFixture.scala │ ├── pysrc2cpg │ │ ├── README.md │ │ ├── build.sbt │ │ ├── pysrc2cpg │ │ ├── pysrc2cpg.sh │ │ ├── pythonGrammar.jj │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── io │ │ │ │ │ └── joern │ │ │ │ │ └── pythonparser │ │ │ │ │ └── PositionToken.java │ │ │ ├── resources │ │ │ │ └── log4j2.xml │ │ │ └── scala │ │ │ │ └── io │ │ │ │ └── joern │ │ │ │ ├── pysrc2cpg │ │ │ │ ├── AutoIncIndex.scala │ │ │ │ ├── CodeToCpg.scala │ │ │ │ ├── ConfigFileCreationPass.scala │ │ │ │ ├── Constants.scala │ │ │ │ ├── ContextStack.scala │ │ │ │ ├── DependenciesFromRequirementsTxtPass.scala │ │ │ │ ├── DynamicTypeHintFullNamePass.scala │ │ │ │ ├── EdgeBuilder.scala │ │ │ │ ├── ImportsPass.scala │ │ │ │ ├── LineAndColumn.scala │ │ │ │ ├── Main.scala │ │ │ │ ├── NodeBuilder.scala │ │ │ │ ├── NodeToCode.scala │ │ │ │ ├── Py2Cpg.scala │ │ │ │ ├── Py2CpgOnFileSystem.scala │ │ │ │ ├── PythonAstVisitor.scala │ │ │ │ ├── PythonAstVisitorHelpers.scala │ │ │ │ ├── PythonImportResolverPass.scala │ │ │ │ ├── PythonInheritanceNamePass.scala │ │ │ │ ├── PythonTypeHintCallLinker.scala │ │ │ │ ├── PythonTypeRecovery.scala │ │ │ │ └── memop │ │ │ │ │ ├── AstNodeToMemoryOperationMap.scala │ │ │ │ │ ├── MemoryOperation.scala │ │ │ │ │ └── MemoryOperationCalculator.scala │ │ │ │ └── pythonparser │ │ │ │ ├── AstPrinter.scala │ │ │ │ ├── AstVisitor.scala │ │ │ │ ├── CharStreamImpl.scala │ │ │ │ ├── PyParser.scala │ │ │ │ └── ast │ │ │ │ ├── Ast.scala │ │ │ │ ├── AttributeProvider.scala │ │ │ │ └── package.scala │ │ │ └── test │ │ │ ├── resources │ │ │ └── log4j2-test.xml │ │ │ └── scala │ │ │ └── io │ │ │ └── joern │ │ │ ├── pysrc2cpg │ │ │ ├── Py2CpgTestContext.scala │ │ │ ├── PySrc2CpgFixture.scala │ │ │ ├── config │ │ │ │ └── ConfigTests.scala │ │ │ ├── cpg │ │ │ │ ├── AssertCpgTests.scala │ │ │ │ ├── AssignCpgTests.scala │ │ │ │ ├── AttributeCpgTests.scala │ │ │ │ ├── BinOpCpgTests.scala │ │ │ │ ├── BoolOpCpgTests.scala │ │ │ │ ├── BuiltinIdentifierTests.scala │ │ │ │ ├── BytesLiteralCpgTests.scala │ │ │ │ ├── CallCpgTests.scala │ │ │ │ ├── ClassCpgTests.scala │ │ │ │ ├── CompareCpgTests.scala │ │ │ │ ├── DeleteCpgTests.scala │ │ │ │ ├── DictCpgTests.scala │ │ │ │ ├── FormatStringCpgTests.scala │ │ │ │ ├── FunctionDefCpgTests.scala │ │ │ │ ├── IfCpgTests.scala │ │ │ │ ├── IntLiteralCpgTests.scala │ │ │ │ ├── ListCpgTests.scala │ │ │ │ ├── MemberCpgTests.scala │ │ │ │ ├── ModuleFunctionCpgTests.scala │ │ │ │ ├── PatternMatchingTests.scala │ │ │ │ ├── RaiseCpgTests.scala │ │ │ │ ├── ReturnCpgTests.scala │ │ │ │ ├── SetCpgTests.scala │ │ │ │ ├── StarredCpgTests.scala │ │ │ │ ├── StrLiteralCpgTests.scala │ │ │ │ ├── StringExpressionListCpgTests.scala │ │ │ │ ├── SubscriptCpgTests.scala │ │ │ │ ├── UnaryOpCpgTests.scala │ │ │ │ ├── VariableReferencingCpgTests.scala │ │ │ │ └── WhileCpgTests.scala │ │ │ ├── dataflow │ │ │ │ └── DataFlowTests.scala │ │ │ └── passes │ │ │ │ ├── ConfigPassTests.scala │ │ │ │ ├── DynamicTypeHintFullNamePassTests.scala │ │ │ │ ├── ImportsPassTests.scala │ │ │ │ ├── InheritanceFullNamePassTests.scala │ │ │ │ └── TypeRecoveryPassTests.scala │ │ │ └── pythonparser │ │ │ └── ParserTests.scala │ ├── rubysrc2cpg │ │ ├── .gitignore │ │ ├── build.sbt │ │ ├── ruby2cpg.sh │ │ ├── rubysrc2cpg.sh │ │ └── src │ │ │ ├── main │ │ │ ├── antlr4 │ │ │ │ └── io │ │ │ │ │ └── joern │ │ │ │ │ └── rubysrc2cpg │ │ │ │ │ ├── deprecated │ │ │ │ │ └── parser │ │ │ │ │ │ ├── DeprecatedRubyLexer.g4 │ │ │ │ │ │ └── DeprecatedRubyParser.g4 │ │ │ │ │ └── parser │ │ │ │ │ ├── RubyLexer.g4 │ │ │ │ │ └── RubyParser.g4 │ │ │ ├── resources │ │ │ │ └── log4j2.xml │ │ │ └── scala │ │ │ │ └── io │ │ │ │ └── joern │ │ │ │ └── rubysrc2cpg │ │ │ │ ├── Main.scala │ │ │ │ ├── RubySrc2Cpg.scala │ │ │ │ ├── astcreation │ │ │ │ ├── AstCreator.scala │ │ │ │ ├── AstCreatorHelper.scala │ │ │ │ ├── AstForExpressionsCreator.scala │ │ │ │ ├── AstForFunctionsCreator.scala │ │ │ │ ├── AstForStatementsCreator.scala │ │ │ │ ├── AstForTypesCreator.scala │ │ │ │ ├── FreshVariableCreator.scala │ │ │ │ └── RubyIntermediateAst.scala │ │ │ │ ├── deprecated │ │ │ │ ├── astcreation │ │ │ │ │ ├── AntlrParser.scala │ │ │ │ │ ├── AstCreator.scala │ │ │ │ │ ├── AstCreatorHelper.scala │ │ │ │ │ ├── AstForControlStructuresCreator.scala │ │ │ │ │ ├── AstForDeclarationsCreator.scala │ │ │ │ │ ├── AstForExpressionsCreator.scala │ │ │ │ │ ├── AstForFunctionsCreator.scala │ │ │ │ │ ├── AstForHereDocsCreator.scala │ │ │ │ │ ├── AstForPrimitivesCreator.scala │ │ │ │ │ ├── AstForStatementsCreator.scala │ │ │ │ │ ├── AstForTypesCreator.scala │ │ │ │ │ └── RubyScope.scala │ │ │ │ ├── parser │ │ │ │ │ ├── DeprecatedRubyLexerBase.scala │ │ │ │ │ ├── DeprecatedRubyLexerPostProcessor.scala │ │ │ │ │ ├── HereDocHandling.scala │ │ │ │ │ ├── InterpolationHandling.scala │ │ │ │ │ ├── QuotedLiteralHandling.scala │ │ │ │ │ └── RegexLiteralHandling.scala │ │ │ │ ├── passes │ │ │ │ │ ├── AstCreationPass.scala │ │ │ │ │ ├── AstPackagePass.scala │ │ │ │ │ ├── Defines.scala │ │ │ │ │ ├── IdentifierToCallPass.scala │ │ │ │ │ ├── RubyImportResolverPass.scala │ │ │ │ │ ├── RubyTypeHintCallLinker.scala │ │ │ │ │ └── RubyTypeRecoveryPassGenerator.scala │ │ │ │ └── utils │ │ │ │ │ └── PackageTable.scala │ │ │ │ ├── parser │ │ │ │ ├── AntlrContextHelpers.scala │ │ │ │ ├── AntlrParser.scala │ │ │ │ ├── AstPrinter.scala │ │ │ │ ├── HereDocHandling.scala │ │ │ │ ├── InterpolationHandling.scala │ │ │ │ ├── QuotedLiteralHandling.scala │ │ │ │ ├── RegexLiteralHandling.scala │ │ │ │ ├── RubyLexerBase.scala │ │ │ │ ├── RubyLexerPostProcessor.scala │ │ │ │ └── RubyNodeCreator.scala │ │ │ │ └── passes │ │ │ │ ├── AstCreationPass.scala │ │ │ │ ├── ConfigFileCreationPass.scala │ │ │ │ └── Defines.scala │ │ │ └── test │ │ │ └── scala │ │ │ └── io │ │ │ └── joern │ │ │ └── rubysrc2cpg │ │ │ ├── config │ │ │ └── ConfigTests.scala │ │ │ ├── dataflow │ │ │ ├── ConditionalTests.scala │ │ │ ├── ControlStructureTests.scala │ │ │ ├── MethodReturnTests.scala │ │ │ └── SingleAssignmentTests.scala │ │ │ ├── deprecated │ │ │ ├── dataflow │ │ │ │ └── DataFlowTests.scala │ │ │ ├── parser │ │ │ │ ├── ArrayTests.scala │ │ │ │ ├── AssignmentTests.scala │ │ │ │ ├── BeginExpressionTests.scala │ │ │ │ ├── BeginStatementTests.scala │ │ │ │ ├── CaseConditionTests.scala │ │ │ │ ├── ClassDefinitionTests.scala │ │ │ │ ├── EnsureClauseTests.scala │ │ │ │ ├── HashLiteralTests.scala │ │ │ │ ├── InvocationWithParenthesesTests.scala │ │ │ │ ├── InvocationWithoutParenthesesTests.scala │ │ │ │ ├── MethodDefinitionTests.scala │ │ │ │ ├── ModuleTests.scala │ │ │ │ ├── ProcDefinitionTests.scala │ │ │ │ ├── RegexTests.scala │ │ │ │ ├── RescueClauseTests.scala │ │ │ │ ├── ReturnTests.scala │ │ │ │ ├── RubyLexerTests.scala │ │ │ │ ├── RubyParserAbstractTest.scala │ │ │ │ ├── StringTests.scala │ │ │ │ ├── SymbolTests.scala │ │ │ │ ├── TernaryConditionalTests.scala │ │ │ │ └── UnlessConditionTests.scala │ │ │ ├── passes │ │ │ │ ├── ConfigFileCreationPassTest.scala │ │ │ │ ├── MetaDataPassTests.scala │ │ │ │ ├── RubyTypeRecoveryTests.scala │ │ │ │ ├── UnknownConstructPass.scala │ │ │ │ ├── ast │ │ │ │ │ ├── AssignCpgTests.scala │ │ │ │ │ ├── AttributeCpgTests.scala │ │ │ │ │ ├── BinOpCpgTests.scala │ │ │ │ │ ├── BoolOpCpgTests.scala │ │ │ │ │ ├── CallCpgTests.scala │ │ │ │ │ ├── CustomAssignmentTests.scala │ │ │ │ │ ├── DoBlockTest.scala │ │ │ │ │ ├── FileTests.scala │ │ │ │ │ ├── FormatStringCpgTests.scala │ │ │ │ │ ├── IdentifierLocalTests.scala │ │ │ │ │ ├── ImportAstCreationTest.scala │ │ │ │ │ ├── LiteralCpgTests.scala │ │ │ │ │ ├── MetaDataTests.scala │ │ │ │ │ ├── MethodOneTests.scala │ │ │ │ │ ├── MethodTwoTests.scala │ │ │ │ │ ├── ModuleTests.scala │ │ │ │ │ ├── NamespaceBlockTest.scala │ │ │ │ │ ├── RescueKeywordCpgTests.scala │ │ │ │ │ ├── ReturnTests.scala │ │ │ │ │ ├── SimpleAstCreationPassTest.scala │ │ │ │ │ ├── TypeDeclAstCreationPassTest.scala │ │ │ │ │ └── UnaryOpCpgTests.scala │ │ │ │ └── cfg │ │ │ │ │ └── SimpleCfgCreationPassTest.scala │ │ │ └── querying │ │ │ │ ├── AssignmentTests.scala │ │ │ │ ├── CallGraphTests.scala │ │ │ │ ├── ControlStructureTests.scala │ │ │ │ ├── FieldAccessTests.scala │ │ │ │ ├── FunctionTests.scala │ │ │ │ ├── IdentifierTests.scala │ │ │ │ ├── MiscTests.scala │ │ │ │ └── RubyMethodFullNameTests.scala │ │ │ ├── querying │ │ │ ├── ArrayTests.scala │ │ │ ├── BooleanLogicTests.scala │ │ │ ├── CallTests.scala │ │ │ ├── CaseTests.scala │ │ │ ├── ClassTests.scala │ │ │ ├── ConditionalTests.scala │ │ │ ├── ControlStructureTests.scala │ │ │ ├── FieldAccessTests.scala │ │ │ ├── HashTests.scala │ │ │ ├── IndexAccessTests.scala │ │ │ ├── LiteralTests.scala │ │ │ ├── MethodReturnTests.scala │ │ │ ├── MethodTests.scala │ │ │ ├── ModuleTests.scala │ │ │ ├── RangeTests.scala │ │ │ ├── SetterTests.scala │ │ │ └── SingleAssignmentTests.scala │ │ │ └── testfixtures │ │ │ └── RubyCode2CpgFixture.scala │ ├── swiftsrc2cpg │ │ ├── README.md │ │ ├── build.sbt │ │ ├── src │ │ │ ├── main │ │ │ │ ├── resources │ │ │ │ │ ├── application.conf │ │ │ │ │ └── log4j2.xml │ │ │ │ └── scala │ │ │ │ │ └── io │ │ │ │ │ └── joern │ │ │ │ │ └── swiftsrc2cpg │ │ │ │ │ ├── Main.scala │ │ │ │ │ ├── SwiftSrc2Cpg.scala │ │ │ │ │ ├── astcreation │ │ │ │ │ ├── AstCreator.scala │ │ │ │ │ ├── AstCreatorHelper.scala │ │ │ │ │ ├── AstForDeclSyntaxCreator.scala │ │ │ │ │ ├── AstForExprSyntaxCreator.scala │ │ │ │ │ ├── AstForPatternSyntaxCreator.scala │ │ │ │ │ ├── AstForStmtSyntaxCreator.scala │ │ │ │ │ ├── AstForSwiftTokenCreator.scala │ │ │ │ │ ├── AstForSyntaxCollectionCreator.scala │ │ │ │ │ ├── AstForSyntaxCreator.scala │ │ │ │ │ ├── AstForTypeSyntaxCreator.scala │ │ │ │ │ └── AstNodeBuilder.scala │ │ │ │ │ ├── datastructures │ │ │ │ │ ├── PendingReference.scala │ │ │ │ │ ├── ResolvedReference.scala │ │ │ │ │ ├── Scope.scala │ │ │ │ │ ├── ScopeElement.scala │ │ │ │ │ ├── ScopeType.scala │ │ │ │ │ └── SwiftGlobal.scala │ │ │ │ │ ├── parser │ │ │ │ │ ├── SwiftJsonParser.scala │ │ │ │ │ └── SwiftNodeSyntax.scala │ │ │ │ │ ├── passes │ │ │ │ │ ├── AstCreationPass.scala │ │ │ │ │ ├── BuiltinTypesPass.scala │ │ │ │ │ ├── ConstClosurePass.scala │ │ │ │ │ ├── Defines.scala │ │ │ │ │ ├── DependenciesPass.scala │ │ │ │ │ ├── GlobalBuiltins.scala │ │ │ │ │ ├── ImportsPass.scala │ │ │ │ │ ├── SwiftInheritanceNamePass.scala │ │ │ │ │ ├── SwiftMetaDataPass.scala │ │ │ │ │ ├── SwiftTypeHintCallLinker.scala │ │ │ │ │ ├── SwiftTypeNodePass.scala │ │ │ │ │ └── SwiftTypeRecovery.scala │ │ │ │ │ └── utils │ │ │ │ │ └── AstGenRunner.scala │ │ │ ├── test │ │ │ │ ├── resources │ │ │ │ │ └── log4j2-test.xml │ │ │ │ └── scala │ │ │ │ │ └── io │ │ │ │ │ └── joern │ │ │ │ │ └── swiftsrc2cpg │ │ │ │ │ ├── io │ │ │ │ │ ├── CodeDumperTest.scala │ │ │ │ │ └── ExcludeTest.scala │ │ │ │ │ ├── passes │ │ │ │ │ ├── ast │ │ │ │ │ │ ├── AbstractPassTest.scala │ │ │ │ │ │ ├── ActorTests.scala │ │ │ │ │ │ ├── AsyncSyntaxTests.scala │ │ │ │ │ │ ├── AsyncTests.scala │ │ │ │ │ │ ├── AvailabilityQueryTests.scala │ │ │ │ │ │ ├── BorrowExprTests.scala │ │ │ │ │ │ ├── BuiltinWordTests.scala │ │ │ │ │ │ ├── ClassExtensionTests.scala │ │ │ │ │ │ ├── ConflictMarkersTests.scala │ │ │ │ │ │ ├── CopyExprTests.scala │ │ │ │ │ │ ├── DeclarationTests.scala │ │ │ │ │ │ ├── DirectiveTests.scala │ │ │ │ │ │ ├── DoExpressionTests.scala │ │ │ │ │ │ ├── EffectfulPropertiesTests.scala │ │ │ │ │ │ ├── EnumElementPatternSwift4Tests.scala │ │ │ │ │ │ ├── EnumTests.scala │ │ │ │ │ │ ├── EnumerationExtensionTests.scala │ │ │ │ │ │ ├── EscapedIdentifiersTests.scala │ │ │ │ │ │ ├── ExpressionTests.scala │ │ │ │ │ │ ├── ForeachAsyncTests.scala │ │ │ │ │ │ ├── ForeachTests.scala │ │ │ │ │ │ ├── GenericDisambiguationTests.scala │ │ │ │ │ │ ├── GuardTests.scala │ │ │ │ │ │ ├── GuardTopLevelTests.scala │ │ │ │ │ │ ├── HashbangLibraryTests.scala │ │ │ │ │ │ ├── InitDeinitTests.scala │ │ │ │ │ │ ├── MatchingPatternsTests.scala │ │ │ │ │ │ ├── MoveExprTests.scala │ │ │ │ │ │ ├── ObjectLiteralsTests.scala │ │ │ │ │ │ ├── OperatorDeclTests.scala │ │ │ │ │ │ ├── OptionalTests.scala │ │ │ │ │ │ ├── PatternTests.scala │ │ │ │ │ │ ├── PoundAssertTests.scala │ │ │ │ │ │ ├── PrefixSlashTests.scala │ │ │ │ │ │ ├── ProtocolExtensionTests.scala │ │ │ │ │ │ ├── RawStringTests.scala │ │ │ │ │ │ ├── RegexLiteralTests.scala │ │ │ │ │ │ ├── RegexTests.scala │ │ │ │ │ │ ├── SimpleAstCreationPassTest.scala │ │ │ │ │ │ ├── StatementTests.scala │ │ │ │ │ │ ├── StructureExtensionTests.scala │ │ │ │ │ │ ├── SubscriptingTests.scala │ │ │ │ │ │ ├── SuperTests.scala │ │ │ │ │ │ ├── SwitchTests.scala │ │ │ │ │ │ ├── ToplevelLibraryTests.scala │ │ │ │ │ │ ├── TrailingClosuresTests.scala │ │ │ │ │ │ ├── TryTests.scala │ │ │ │ │ │ ├── TypeTests.scala │ │ │ │ │ │ ├── TypealiasTests.scala │ │ │ │ │ │ ├── VariadicGenericsTests.scala │ │ │ │ │ │ └── WhileTests.scala │ │ │ │ │ └── dependency │ │ │ │ │ │ └── DependenciesPassTests.scala │ │ │ │ │ └── testfixtures │ │ │ │ │ ├── DataFlowCodeToCpgSuite.scala │ │ │ │ │ ├── SwiftCfgTestCpg.scala │ │ │ │ │ └── SwiftSrc2CpgFrontend.scala │ │ │ └── universal │ │ │ │ └── bin │ │ │ │ └── swiftsrc2cpg.sh │ │ └── swiftsrc2cpg.sh │ └── x2cpg │ │ ├── build.sbt │ │ └── src │ │ ├── main │ │ ├── resources │ │ │ ├── symlink-to-main.c │ │ │ ├── symlink-to-testcode │ │ │ └── testcode │ │ │ │ ├── main.c │ │ │ │ ├── main.h │ │ │ │ └── other.h │ │ └── scala │ │ │ └── io │ │ │ └── joern │ │ │ └── x2cpg │ │ │ ├── Ast.scala │ │ │ ├── AstCreatorBase.scala │ │ │ ├── AstNodeBuilder.scala │ │ │ ├── Defines.scala │ │ │ ├── Imports.scala │ │ │ ├── SourceFiles.scala │ │ │ ├── X2Cpg.scala │ │ │ ├── astgen │ │ │ ├── AstGenConfig.scala │ │ │ ├── AstGenNodeBuilder.scala │ │ │ ├── AstGenRunner.scala │ │ │ └── package.scala │ │ │ ├── datastructures │ │ │ ├── Global.scala │ │ │ ├── Scope.scala │ │ │ ├── ScopeElement.scala │ │ │ └── Stack.scala │ │ │ ├── layers │ │ │ ├── Base.scala │ │ │ ├── CallGraph.scala │ │ │ ├── ControlFlow.scala │ │ │ ├── DumpAst.scala │ │ │ ├── DumpCdg.scala │ │ │ ├── DumpCfg.scala │ │ │ └── TypeRelations.scala │ │ │ ├── passes │ │ │ ├── base │ │ │ │ ├── AstLinkerPass.scala │ │ │ │ ├── ContainsEdgePass.scala │ │ │ │ ├── FileCreationPass.scala │ │ │ │ ├── MethodDecoratorPass.scala │ │ │ │ ├── MethodStubCreator.scala │ │ │ │ ├── NamespaceCreator.scala │ │ │ │ ├── ParameterIndexCompatPass.scala │ │ │ │ ├── TypeDeclStubCreator.scala │ │ │ │ └── TypeUsagePass.scala │ │ │ ├── callgraph │ │ │ │ ├── DynamicCallLinker.scala │ │ │ │ ├── MethodRefLinker.scala │ │ │ │ ├── NaiveCallLinker.scala │ │ │ │ └── StaticCallLinker.scala │ │ │ ├── controlflow │ │ │ │ ├── CfgCreationPass.scala │ │ │ │ ├── cfgcreation │ │ │ │ │ ├── Cfg.scala │ │ │ │ │ └── CfgCreator.scala │ │ │ │ ├── cfgdominator │ │ │ │ │ ├── CfgAdapter.scala │ │ │ │ │ ├── CfgDominator.scala │ │ │ │ │ ├── CfgDominatorFrontier.scala │ │ │ │ │ ├── CfgDominatorPass.scala │ │ │ │ │ ├── CpgCfgAdapter.scala │ │ │ │ │ ├── DomTreeAdapter.scala │ │ │ │ │ └── ReverseCpgCfgAdapter.scala │ │ │ │ └── codepencegraph │ │ │ │ │ ├── CdgPass.scala │ │ │ │ │ └── CpgPostDomTreeAdapter.scala │ │ │ ├── frontend │ │ │ │ ├── Dereference.scala │ │ │ │ ├── MetaDataPass.scala │ │ │ │ ├── SymbolTable.scala │ │ │ │ ├── TypeNodePass.scala │ │ │ │ ├── XConfigFileCreationPass.scala │ │ │ │ ├── XImportResolverPass.scala │ │ │ │ ├── XImportsPass.scala │ │ │ │ ├── XInheritanceFullNamePass.scala │ │ │ │ ├── XTypeHintCallLinker.scala │ │ │ │ └── XTypeRecovery.scala │ │ │ └── typerelations │ │ │ │ ├── AliasLinkerPass.scala │ │ │ │ ├── FieldAccessLinkerPass.scala │ │ │ │ └── TypeHierarchyPass.scala │ │ │ └── utils │ │ │ ├── AstPropertiesUtil.scala │ │ │ ├── ConcurrentTaskUtil.scala │ │ │ ├── Environment.scala │ │ │ ├── ExternalCommand.scala │ │ │ ├── HashUtil.scala │ │ │ ├── LinkingUtil.scala │ │ │ ├── ListUtils.scala │ │ │ ├── NodeBuilders.scala │ │ │ ├── OffsetUtils.scala │ │ │ ├── Report.scala │ │ │ ├── StringUtils.scala │ │ │ ├── TimeUtils.scala │ │ │ └── dependency │ │ │ ├── DependencyResolver.scala │ │ │ ├── GradleDependencies.scala │ │ │ ├── MavenCoordinates.scala │ │ │ └── MavenDependencies.scala │ │ └── test │ │ ├── resources │ │ ├── log4j2-test.xml │ │ └── testfile │ │ └── scala │ │ └── io │ │ └── joern │ │ └── x2cpg │ │ ├── AstTests.scala │ │ ├── SourceFilesTests.scala │ │ ├── X2CpgTests.scala │ │ ├── layers │ │ ├── DumpAstTests.scala │ │ ├── DumpCdgTests.scala │ │ └── DumpCfgTests.scala │ │ ├── passes │ │ ├── AstLinkerPassTest.scala │ │ ├── CfgDominatorFrontierTests.scala │ │ ├── CfgDominatorPassTests.scala │ │ ├── ContainsEdgePassTest.scala │ │ ├── MemberAccessLinkerTests.scala │ │ ├── MethodDecoratorPassTests.scala │ │ └── NamespaceCreatorTests.scala │ │ ├── testfixtures │ │ ├── CfgTestFixture.scala │ │ ├── Code2CpgFixture.scala │ │ ├── DefaultTestCpg.scala │ │ ├── EmptyGraphFixture.scala │ │ ├── LanguageFrontend.scala │ │ └── TestCpg.scala │ │ └── utils │ │ ├── ConcurrentTaskUtilTests.scala │ │ ├── ExternalCommandTest.scala │ │ ├── HashUtilsTest.scala │ │ ├── IgnoreInWindows.scala │ │ └── dependency │ │ ├── DependencyResolverTests.scala │ │ └── MavenCoordinatesTests.scala └── src │ ├── main │ ├── resources │ │ └── scripts │ │ │ ├── README.md │ │ │ ├── assertions.sc │ │ │ ├── binary │ │ │ └── gadgets.sc │ │ │ ├── c │ │ │ ├── assertions.sc │ │ │ ├── const-ish.sc │ │ │ ├── malloc-leak.sc │ │ │ ├── malloc-overflow.sc │ │ │ ├── pointer-to-int.sc │ │ │ ├── scripts.json │ │ │ ├── syscalls.sc │ │ │ └── userspace-memory-access.sc │ │ │ ├── general │ │ │ ├── help.sc │ │ │ ├── list-funcs.sc │ │ │ ├── run.sc │ │ │ └── scripts.json │ │ │ └── trigger-error.sc │ └── scala │ │ └── io │ │ └── joern │ │ └── joerncli │ │ ├── CpgBasedTool.scala │ │ ├── DefaultOverlays.scala │ │ ├── JoernExport.scala │ │ ├── JoernFlow.scala │ │ ├── JoernParse.scala │ │ ├── JoernScan.scala │ │ ├── JoernSlice.scala │ │ ├── JoernVectors.scala │ │ └── console │ │ ├── Joern.scala │ │ ├── JoernConsole.scala │ │ ├── JoernProject.scala │ │ ├── Predefined.scala │ │ └── ReplBridge.scala │ ├── test │ ├── resources │ │ └── testcode │ │ │ ├── SlimAndroid │ │ │ ├── README.md │ │ │ ├── app │ │ │ │ ├── build.gradle │ │ │ │ ├── proguard-rules.pro │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ ├── AndroidManifest.xml │ │ │ │ │ ├── java │ │ │ │ │ └── com │ │ │ │ │ │ └── example │ │ │ │ │ │ └── slimandroid │ │ │ │ │ │ └── MainActivity.kt │ │ │ │ │ └── res │ │ │ │ │ └── layout │ │ │ │ │ └── activity_main.xml │ │ │ ├── build.gradle │ │ │ ├── gradle.properties │ │ │ ├── gradle │ │ │ │ └── wrapper │ │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ │ └── gradle-wrapper.properties │ │ │ ├── gradlew │ │ │ └── settings.gradle │ │ │ ├── const-ish │ │ │ └── const-ish.cpp │ │ │ ├── free │ │ │ └── free.c │ │ │ ├── leak │ │ │ └── leak.c │ │ │ ├── malloc-overflow │ │ │ └── malloc-overflow.c │ │ │ ├── syscalls │ │ │ └── syscalls.c │ │ │ └── unsafe-ptr │ │ │ └── unsafe-ptr.c │ └── scala │ │ └── io │ │ └── joern │ │ └── joerncli │ │ ├── AbstractJoernCliTest.scala │ │ ├── ConsoleTests.scala │ │ ├── GenerationTests.scala │ │ ├── JoernExportTests.scala │ │ └── RunScriptTests.scala │ └── universal │ ├── .installation_root │ ├── bin │ └── scalac │ ├── c2cpg.bat │ ├── c2cpg.sh │ ├── conf │ ├── log4j-ghidra.xml │ └── log4j2.xml │ ├── ghidra2cpg │ ├── ghidra2cpg.bat │ ├── gosrc2cpg │ ├── gosrc2cpg.bat │ ├── ida2cpg │ ├── ida2cpg.bat │ ├── javasrc2cpg │ ├── javasrc2cpg.bat │ ├── jimple2cpg │ ├── jimple2cpg.bat │ ├── joern │ ├── joern-cpg2scpg │ ├── joern-export │ ├── joern-export.bat │ ├── joern-flow │ ├── joern-flow.bat │ ├── joern-parse │ ├── joern-parse.bat │ ├── joern-scan │ ├── joern-scan.bat │ ├── joern-slice │ ├── joern-slice.bat │ ├── joern-vectors │ ├── joern-vectors.bat │ ├── joern.bat │ ├── jssrc2cpg.bat │ ├── jssrc2cpg.sh │ ├── kotlin2cpg │ ├── kotlin2cpg.bat │ ├── php2cpg │ ├── php2cpg.bat │ ├── pysrc2cpg │ ├── pysrc2cpg.bat │ ├── rubysrc2cpg │ ├── rubysrc2cpg.bat │ ├── schema-extender.sh │ ├── schema-extender │ ├── build.sbt │ ├── project │ │ ├── FileUtils.scala │ │ └── build.properties │ ├── sbt │ ├── schema │ │ └── src │ │ │ └── main │ │ │ └── scala │ │ │ └── CpgExtCodegen.scala │ └── test.sh │ ├── swiftsrc2cpg.bat │ └── swiftsrc2cpg.sh ├── joern-export ├── joern-export.bat ├── joern-flow ├── joern-flow.bat ├── joern-install.sh ├── joern-parse ├── joern-parse.bat ├── joern-scan ├── joern-scan.bat ├── joern-slice ├── joern-vectors ├── joern.bat ├── lib ├── macros ├── build.sbt └── src │ ├── main │ ├── java │ │ └── io │ │ │ └── joern │ │ │ └── console │ │ │ └── q.java │ └── scala │ │ └── io │ │ └── joern │ │ ├── console │ │ ├── Query.scala │ │ └── QueryDatabase.scala │ │ └── macros │ │ └── QueryMacros.scala │ └── test │ └── scala │ └── io │ └── joern │ ├── console │ └── QueryDatabaseTests.scala │ └── macros │ └── QueryMacroTests.scala ├── project ├── Environment.scala ├── FileUtils.scala ├── Projects.scala ├── SbtHelper.scala ├── SimpleCache.scala ├── Versions.scala ├── build.properties ├── meta-build.sbt └── plugins.sbt ├── querydb-install.sh ├── querydb ├── README.md ├── build.sbt └── src │ ├── main │ └── scala │ │ └── io │ │ └── joern │ │ ├── dumpq │ │ └── Main.scala │ │ └── scanners │ │ ├── Crew.scala │ │ ├── QueryTags.scala │ │ ├── android │ │ ├── ArbitraryFileWrites.scala │ │ ├── ExternalStorage.scala │ │ ├── Intents.scala │ │ ├── JavaScriptInterface.scala │ │ ├── Misconfigurations.scala │ │ ├── RootDetection.scala │ │ ├── UnprotectedAppParts.scala │ │ └── UnsafeReflection.scala │ │ ├── c │ │ ├── CopyLoops.scala │ │ ├── CredentialDrop.scala │ │ ├── DangerousFunctions.scala │ │ ├── FileOpRace.scala │ │ ├── HeapBasedOverflow.scala │ │ ├── IntegerTruncations.scala │ │ ├── Metrics.scala │ │ ├── MissingLengthCheck.scala │ │ ├── NullTermination.scala │ │ ├── QueryLangExtensions.scala │ │ ├── RetvalChecks.scala │ │ ├── SignedLeftShift.scala │ │ ├── SocketApi.scala │ │ └── UseAfterFree.scala │ │ ├── ghidra │ │ ├── DangerousFunctions.scala │ │ └── UserInputIntoDangerousFunctions.scala │ │ ├── java │ │ ├── CertificateChecks.scala │ │ ├── CrossSiteScripting.scala │ │ ├── CryptographyMisuse.scala │ │ ├── DangerousFunctions.scala │ │ └── SQLInjection.scala │ │ ├── kotlin │ │ ├── NetworkCommunication.scala │ │ ├── NetworkProtocols.scala │ │ └── PathTraversals.scala │ │ └── php │ │ ├── SQLInjection.scala │ │ └── ShellExec.scala │ └── test │ ├── resources │ └── testbinaries │ │ ├── buf1.c │ │ ├── buf1.exe │ │ ├── buf2.c │ │ ├── buf2.exe │ │ ├── buf2_neg.c │ │ ├── buf2_neg.exe │ │ ├── dangerous_functions.c │ │ └── dangerous_functions.o │ └── scala │ └── io │ └── joern │ ├── scanners │ ├── android │ │ ├── ArbitraryFileWritesJavaTests.scala │ │ ├── ArbitraryFileWritesKotlinTests.scala │ │ ├── ExternalStorageTests.scala │ │ ├── IntentsTests.scala │ │ ├── JavaScriptInterfaceTests.scala │ │ ├── MisconfigurationsTests.scala │ │ ├── RootDetectionTests.scala │ │ ├── UnprotectedAppPartsTests.scala │ │ └── UnsafeReflectionTests.scala │ ├── c │ │ ├── CopyLoopTests.scala │ │ ├── CredentialDropTests.scala │ │ ├── DangerousFunctionsTests.scala │ │ ├── FileOpRaceTests.scala │ │ ├── HeapBasedOverflowTests.scala │ │ ├── IntegerTruncationsTests.scala │ │ ├── MetricsTests.scala │ │ ├── NullTerminationTests.scala │ │ ├── QueryWithReachableBy.scala │ │ ├── RetvalChecksTests.scala │ │ ├── SignedLeftShiftTests.scala │ │ ├── SocketApiTests.scala │ │ ├── UseAfterFreePostUsage.scala │ │ ├── UseAfterFreeReturnTests.scala │ │ └── UseAfterFreeTests.scala │ ├── ghidra │ │ ├── DangerousFunctionsTests.scala │ │ └── UserInputIntoDangerousFunctionsTests.scala │ ├── java │ │ └── CryptographyMisuseTests.scala │ └── kotlin │ │ ├── NetworkCommunicationTests.scala │ │ ├── NetworkProtocolsTests.scala │ │ └── PathTraversalsTests.scala │ ├── suites │ ├── AllBundlesTestSuite.scala │ ├── AndroidQueryTestSuite.scala │ ├── CQueryTestSuite.scala │ ├── GhidraQueryTestSuite.scala │ ├── JavaQueryTestSuite.scala │ ├── KotlinQueryTestSuite.scala │ └── QDBArgumentProvider.scala │ └── util │ └── QueryUtil.scala ├── scripts ├── sdkman_publish.sh ├── semanticcpg ├── build.sbt └── src │ ├── main │ └── scala │ │ └── io │ │ └── shiftleft │ │ └── semanticcpg │ │ ├── NodeExtension.scala │ │ ├── Overlays.scala │ │ ├── accesspath │ │ ├── AccessElement.scala │ │ ├── AccessPath.scala │ │ ├── AccessPathAlgebra.md │ │ └── TrackedBase.scala │ │ ├── codedumper │ │ ├── CodeDumper.scala │ │ └── SourceHighlighter.scala │ │ ├── dotgenerator │ │ ├── AstGenerator.scala │ │ ├── CallGraphGenerator.scala │ │ ├── CdgGenerator.scala │ │ ├── CfgGenerator.scala │ │ ├── DotAstGenerator.scala │ │ ├── DotCallGraphGenerator.scala │ │ ├── DotCdgGenerator.scala │ │ ├── DotCfgGenerator.scala │ │ ├── DotSerializer.scala │ │ ├── DotTypeHierarchyGenerator.scala │ │ └── TypeHierarchyGenerator.scala │ │ ├── language │ │ ├── AccessPathHandling.scala │ │ ├── HasLocation.scala │ │ ├── ICallResolver.scala │ │ ├── LocationCreator.scala │ │ ├── NewNodeSteps.scala │ │ ├── NewTagNodePairTraversal.scala │ │ ├── NodeExtensionFinder.scala │ │ ├── NodeOrdering.scala │ │ ├── NodeSteps.scala │ │ ├── NodeTypeStarters.scala │ │ ├── Show.scala │ │ ├── Steps.scala │ │ ├── TagTraversal.scala │ │ ├── android │ │ │ ├── ConfigFileTraversal.scala │ │ │ ├── Constants.scala │ │ │ ├── LocalTraversal.scala │ │ │ ├── MethodTraversal.scala │ │ │ ├── NodeTypeStarters.scala │ │ │ └── package.scala │ │ ├── bindingextension │ │ │ ├── MethodTraversal.scala │ │ │ └── TypeDeclTraversal.scala │ │ ├── callgraphextension │ │ │ ├── CallTraversal.scala │ │ │ └── MethodTraversal.scala │ │ ├── dotextension │ │ │ ├── AstNodeDot.scala │ │ │ ├── CfgNodeDot.scala │ │ │ ├── InterproceduralNodeDot.scala │ │ │ └── Shared.scala │ │ ├── importresolver │ │ │ ├── Implicits.scala │ │ │ ├── README.md │ │ │ ├── ResolvedImportAsTagTraversal.scala │ │ │ └── package.scala │ │ ├── modulevariable │ │ │ ├── Implicits.scala │ │ │ ├── ModuleVariableAsNodeTraversal.scala │ │ │ ├── ModuleVariableTraversal.scala │ │ │ ├── NodeTypeStarters.scala │ │ │ ├── OpNodes.scala │ │ │ ├── README.md │ │ │ └── nodemethods │ │ │ │ ├── ModuleVariableAsNodeMethods.scala │ │ │ │ └── ModuleVariableMethods.scala │ │ ├── nodemethods │ │ │ ├── AstNodeMethods.scala │ │ │ ├── CallMethods.scala │ │ │ ├── CfgNodeMethods.scala │ │ │ ├── ExpressionMethods.scala │ │ │ ├── IdentifierMethods.scala │ │ │ ├── LiteralMethods.scala │ │ │ ├── LocalMethods.scala │ │ │ ├── MethodMethods.scala │ │ │ ├── MethodParameterInMethods.scala │ │ │ ├── MethodParameterOutMethods.scala │ │ │ ├── MethodRefMethods.scala │ │ │ ├── MethodReturnMethods.scala │ │ │ ├── NodeMethods.scala │ │ │ └── StoredNodeMethods.scala │ │ ├── operatorextension │ │ │ ├── ArrayAccessTraversal.scala │ │ │ ├── AssignmentTraversal.scala │ │ │ ├── FieldAccessTraversal.scala │ │ │ ├── Implicits.scala │ │ │ ├── NodeTypeStarters.scala │ │ │ ├── OpAstNodeTraversal.scala │ │ │ ├── OpNodes.scala │ │ │ ├── TargetTraversal.scala │ │ │ ├── nodemethods │ │ │ │ ├── ArrayAccessMethods.scala │ │ │ │ ├── AssignmentMethods.scala │ │ │ │ ├── FieldAccessMethods.scala │ │ │ │ ├── OpAstNodeMethods.scala │ │ │ │ └── TargetMethods.scala │ │ │ └── package.scala │ │ ├── package.scala │ │ └── types │ │ │ ├── expressions │ │ │ ├── CallTraversal.scala │ │ │ ├── ControlStructureTraversal.scala │ │ │ ├── IdentifierTraversal.scala │ │ │ └── generalizations │ │ │ │ ├── AstNodeTraversal.scala │ │ │ │ ├── CfgNodeTraversal.scala │ │ │ │ ├── DeclarationTraversal.scala │ │ │ │ └── ExpressionTraversal.scala │ │ │ ├── propertyaccessors │ │ │ ├── EvalTypeAccessors.scala │ │ │ └── ModifierAccessors.scala │ │ │ └── structure │ │ │ ├── AnnotationParameterAssignTraversal.scala │ │ │ ├── AnnotationTraversal.scala │ │ │ ├── DependencyTraversal.scala │ │ │ ├── FileTraversal.scala │ │ │ ├── ImportTraversal.scala │ │ │ ├── LocalTraversal.scala │ │ │ ├── MemberTraversal.scala │ │ │ ├── MethodParameterOutTraversal.scala │ │ │ ├── MethodParameterTraversal.scala │ │ │ ├── MethodReturnTraversal.scala │ │ │ ├── MethodTraversal.scala │ │ │ ├── NamespaceBlockTraversal.scala │ │ │ ├── NamespaceTraversal.scala │ │ │ ├── TypeDeclTraversal.scala │ │ │ └── TypeTraversal.scala │ │ ├── layers │ │ └── LayerCreator.scala │ │ ├── package.scala │ │ ├── testing │ │ ├── DummyNode.scala │ │ └── package.scala │ │ └── utils │ │ ├── MemberAccess.scala │ │ ├── SecureXmlParsing.scala │ │ └── Statements.scala │ └── test │ └── scala │ └── io │ └── shiftleft │ └── semanticcpg │ ├── OverlaysTests.scala │ ├── accesspath │ └── AccessPathTests.scala │ ├── language │ ├── NewNodeStepsTests.scala │ ├── StepsTest.scala │ ├── bindingextension │ │ └── BindingTests.scala │ ├── operatorextension │ │ └── OperatorExtensionTests.scala │ └── types │ │ ├── expressions │ │ └── generalizations │ │ │ ├── CfgNodeTraversalTests.scala │ │ │ └── ExpressionTraversalTests.scala │ │ └── structure │ │ ├── FileTests.scala │ │ ├── MemberTests.scala │ │ ├── MethodParameterTests.scala │ │ ├── MethodTests.scala │ │ ├── NamespaceTests.scala │ │ └── TypeTests.scala │ └── utils │ └── CountStatementsTests.scala ├── test-additionalfuncs.sc ├── test-cpg-callotherscript.sc ├── test-cpg.sc ├── test-dependencies.sc ├── test-main-withargs.sc ├── test-main.sc ├── test-simple.sc ├── testDistro.sh ├── tests ├── code │ ├── c │ │ └── test.c │ ├── ghidra │ ├── java │ │ └── MethodTest.class │ ├── javasrc │ │ └── MethodTest.java │ ├── jssrc │ │ └── simple.js │ ├── php │ │ └── test.php │ └── pythonsrc │ │ └── simple.py ├── frontends-smoketest.sc ├── frontends-tests.sh ├── frontends-testscript.sc ├── querydb-test.sh ├── scripts-test.sh └── smoke-test.sh └── updateDependencies.sh /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto eol=lf 2 | -------------------------------------------------------------------------------- /.installation_root: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/.installation_root -------------------------------------------------------------------------------- /.sbtopts: -------------------------------------------------------------------------------- 1 | -J-Xms3G 2 | -J-Xmx4G 3 | -------------------------------------------------------------------------------- /.scalafmt.conf: -------------------------------------------------------------------------------- 1 | version = 3.7.11 2 | runner.dialect = scala3 3 | preset = IntelliJ 4 | maxColumn = 120 5 | align.preset = true 6 | -------------------------------------------------------------------------------- /benchmarks/.gitignore: -------------------------------------------------------------------------------- 1 | *.txt -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing1$A.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing1$A.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing10$A.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing10$A.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing10.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing10.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing11$A.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing11$A.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing11.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing11.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing2$A.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing2$A.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing3$A.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing3$A.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing3.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing4$A.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing4$A.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing4.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing4.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing5$A.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing5$A.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing5$B.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing5$B.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing5.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing5.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing6$A.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing6$A.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing6$B.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing6$B.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing6.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing6.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing7$A.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing7$A.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing7.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing7.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing8$A.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing8$A.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing8.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing8.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing9$A.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing9$A.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/aliasing/Aliasing9.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/aliasing/Aliasing9.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/arrays/Arrays1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/arrays/Arrays1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/arrays/Arrays10$Video.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/arrays/Arrays10$Video.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/arrays/Arrays10$VideoSet.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/arrays/Arrays10$VideoSet.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/arrays/Arrays10.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/arrays/Arrays10.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/arrays/Arrays2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/arrays/Arrays2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/arrays/Arrays3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/arrays/Arrays3.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/arrays/Arrays3.java: -------------------------------------------------------------------------------- 1 | class Arrays3 { 2 | 3 | static int secret = 42; 4 | 5 | public static void main(String[] args) { 6 | int[] arr = new int[secret]; 7 | 8 | for (int i = 0; i < Integer.MAX_VALUE; i++) { 9 | try { 10 | int j = arr[i]; 11 | } catch (Exception e) { 12 | System.exit(0); 13 | } 14 | } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/arrays/Arrays4.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/arrays/Arrays4.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/arrays/Arrays4.java: -------------------------------------------------------------------------------- 1 | class Arrays4 { 2 | public static int foo(int h) { 3 | int[] a = new int[2]; 4 | a[0] = h; 5 | return a[1]; 6 | } 7 | } -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/arrays/Arrays5.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/arrays/Arrays5.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/arrays/Arrays5.java: -------------------------------------------------------------------------------- 1 | class Arrays5 { 2 | 3 | static private int secret = 42; 4 | 5 | public static void main(String[] args) { 6 | 7 | int[] arr = new int[5]; 8 | arr[0] = secret; 9 | 10 | if (arr[0] == 42) { 11 | System.out.println("Found"); 12 | } 13 | 14 | } 15 | 16 | } 17 | -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/arrays/Arrays6.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/arrays/Arrays6.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/arrays/Arrays6.java: -------------------------------------------------------------------------------- 1 | class Arrays6 { 2 | 3 | static private int secret = 42; 4 | 5 | public static void main(String[] args) { 6 | 7 | int[] arr = new int[5]; 8 | arr[0] = secret; 9 | 10 | if (arr[0] == 42) { 11 | System.out.println("checked"); 12 | } else { 13 | System.out.println("checked"); 14 | } 15 | 16 | } 17 | 18 | } 19 | -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/arrays/Arrays7.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/arrays/Arrays7.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/arrays/Arrays7.java: -------------------------------------------------------------------------------- 1 | class Arrays7 { 2 | 3 | static int secret=42; 4 | 5 | public static void main(String[] args) { 6 | int[] a = new int[secret]; 7 | a = new int[5]; 8 | System.out.println(a.length); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/arrays/Arrays8.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/arrays/Arrays8.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/arrays/Arrays9.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/arrays/Arrays9.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/casting/Casting1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/casting/Casting1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/casting/Casting2$A.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/casting/Casting2$A.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/casting/Casting2$B.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/casting/Casting2$B.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/casting/Casting2$C.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/casting/Casting2$C.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/casting/Casting2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/casting/Casting2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer1$A.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer1$A.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer2$A.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer2$A.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer3$A.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer3$A.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer3.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer4$A.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer4$A.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer4.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer4.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer5.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer5.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer5.java: -------------------------------------------------------------------------------- 1 | class ClassInitializer5 { 2 | 3 | static String l = "Foo"; 4 | static String h = "Top Secret"; 5 | 6 | static String x = "Foo"; 7 | static { 8 | x = h; 9 | } 10 | 11 | public static void main(String[] args) { 12 | l = x; 13 | System.out.println(l); 14 | } 15 | 16 | } 17 | -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer6$A.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer6$A.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer6$B.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer6$B.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer6.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer6.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer7$A.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer7$A.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer7.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer7.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/classinitializer/ClassInitializer7.java: -------------------------------------------------------------------------------- 1 | class ClassInitializer7 { 2 | 3 | private static String secret = "secret"; 4 | 5 | static class A { 6 | static { 7 | System.out.println(secret); 8 | } 9 | } 10 | 11 | public static void main(String[] args) { 12 | System.out.println("nothing here."); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/exceptions/Exceptions1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/exceptions/Exceptions1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/exceptions/Exceptions2$T.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/exceptions/Exceptions2$T.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/exceptions/Exceptions2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/exceptions/Exceptions2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/exceptions/Exceptions3$T.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/exceptions/Exceptions3$T.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/exceptions/Exceptions3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/exceptions/Exceptions3.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/exceptions/Exceptions4$T.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/exceptions/Exceptions4$T.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/exceptions/Exceptions4.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/exceptions/Exceptions4.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/exceptions/Exceptions5.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/exceptions/Exceptions5.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/exceptions/Exceptions6.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/exceptions/Exceptions6.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional1.java: -------------------------------------------------------------------------------- 1 | class HighConditional1 { 2 | public static void main(String args[]) { 3 | int h = 5; 4 | int l = 1; 5 | f(h, l); 6 | } 7 | 8 | public static int f(int h, int l) { 9 | while (h > 0) { 10 | h--; 11 | l++; 12 | } 13 | return l; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional10.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional10.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional11$A.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional11$A.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional11$B.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional11$B.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional11$C.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional11$C.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional11.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional11.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional12$Webstore$HighConditional12$Video.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional12$Webstore$HighConditional12$Video.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional12$Webstore$HighConditional12$VideoSet.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional12$Webstore$HighConditional12$VideoSet.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional12$Webstore.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional12$Webstore.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional2.java: -------------------------------------------------------------------------------- 1 | class HighConditional2 { 2 | public static void main(String args[]) { 3 | int h = 5; 4 | int l = 1; 5 | f(h, l); 6 | } 7 | 8 | public static int f(int h, int l) { 9 | while (h > 0) { 10 | h--; 11 | } 12 | return l; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional3.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional4.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional4.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional5$Account.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional5$Account.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional5$AccountOwner.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional5$AccountOwner.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional5$Beneficiary.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional5$Beneficiary.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional5$ErrorLog.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional5$ErrorLog.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional5$Main.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional5$Main.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional5$TransactionLog.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional5$TransactionLog.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional6$Account.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional6$Account.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional6$AccountOwner.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional6$AccountOwner.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional6$Beneficiary.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional6$Beneficiary.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional6$ErrorLog.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional6$ErrorLog.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional6$Main.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional6$Main.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional6$TransactionLog.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional6$TransactionLog.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional7$Main.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional7$Main.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional7$PasswordManager.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional7$PasswordManager.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional8$Main.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional8$Main.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional8$PasswordManager.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional8$PasswordManager.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional9.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/highconditional/HighConditional9.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/highconditional/HighConditional9.java: -------------------------------------------------------------------------------- 1 | class HighConditional9 { 2 | private static boolean secret = true; 3 | 4 | public static void main(String[] args) { 5 | test(); 6 | } 7 | 8 | public static int test() { 9 | int value; 10 | 11 | if (secret) { 12 | value = 1; 13 | } else { 14 | value = 1; 15 | } 16 | 17 | return value; 18 | } 19 | 20 | } 21 | -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/library/Library1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/library/Library1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/library/Library2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/library/Library2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/library/Library3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/library/Library3.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/library/Library4.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/library/Library4.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/library/Library5.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/library/Library5.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/library/Library6.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/library/Library6.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/library/Library7.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/library/Library7.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple1.java: -------------------------------------------------------------------------------- 1 | class Simple1 { 2 | public static boolean leakyMethod(boolean high) { 3 | boolean ret; 4 | ret = (high && true); 5 | return ret; 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple10.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple10.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple11$A.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple11$A.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple11.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple11.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple12.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple12.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple13$Review.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple13$Review.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple13.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple13.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple14$Review.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple14$Review.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple14.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple14.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple15.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple15.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple16.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple16.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple16.java: -------------------------------------------------------------------------------- 1 | import java.util.Random; 2 | 3 | class Simple16 { 4 | private static int secret = 42; 5 | 6 | public static void main(String[] args) { 7 | int output = secret; 8 | 9 | Random random = new Random(); 10 | output += random.nextInt(Integer.MAX_VALUE) - secret; 11 | 12 | System.out.println(Integer.toString(output)); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple17.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple17.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple18$Address.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple18$Address.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple18$DAddress.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple18$DAddress.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple18.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple18.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple2.java: -------------------------------------------------------------------------------- 1 | class Simple2 { 2 | public static boolean leakyMethod(boolean high) { 3 | boolean ret; 4 | ret = (high || true) || (high || false); 5 | return ret; 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple3.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple4.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple4.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple5.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple5.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple6.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple6.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple6.java: -------------------------------------------------------------------------------- 1 | class Simple6 { 2 | 3 | public static void main(String[] args) { 4 | leakyMethod(randInt()); 5 | } 6 | 7 | public static int leakyMethod(int high) { 8 | return high; 9 | } 10 | 11 | /** Helper method to obtain a random integer */ 12 | static int randInt() { 13 | return 42; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple7.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple7.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple7.java: -------------------------------------------------------------------------------- 1 | class Simple7 { 2 | public static void main(String args[]) { 3 | f(randInt(), randInt()); 4 | } 5 | 6 | public static int f(int h, int l) { 7 | l = h; 8 | return l; 9 | } 10 | 11 | /** Helper methot to obtain a random integer */ 12 | static int randInt() { 13 | return 42; 14 | } 15 | 16 | } 17 | -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple8.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple8.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple8.java: -------------------------------------------------------------------------------- 1 | class Simple8 { 2 | 3 | public static void main(String[] args) { 4 | leakyMethod(randInt()); 5 | } 6 | 7 | public static int leakyMethod(int high) { 8 | return 0; 9 | } 10 | 11 | /** Helper methot to obtain a random integer */ 12 | static int randInt() { 13 | return 42; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /benchmarks/src/test/resources/ifspec/simple/Simple9.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/ifspec/simple/Simple9.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/basic/Basic1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/basic/Basic1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/basic/Basic2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/basic/Basic2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/ctx/Ctx1$Box.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/ctx/Ctx1$Box.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/ctx/Ctx1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/ctx/Ctx1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/ctx/Ctx2$Box1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/ctx/Ctx2$Box1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/ctx/Ctx2$Box2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/ctx/Ctx2$Box2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/ctx/Ctx2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/ctx/Ctx2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/ctx/Ctx3$CensoredPrintWriter.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/ctx/Ctx3$CensoredPrintWriter.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/ctx/Ctx3$UpgradedPrintWriter.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/ctx/Ctx3$UpgradedPrintWriter.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/ctx/Ctx3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/ctx/Ctx3.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/ctx/Ctx4$CensoredBufferedReader.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/ctx/Ctx4$CensoredBufferedReader.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/ctx/Ctx4$UpgradedBufferedReader.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/ctx/Ctx4$UpgradedBufferedReader.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/ctx/Ctx4.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/ctx/Ctx4.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/ctx/Ctx5.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/ctx/Ctx5.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/events/Events1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/events/Events1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/events/Events2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/events/Events2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/events/Events3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/events/Events3.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/events/Events4.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/events/Events4.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/events/Events5$AnotherEventHandler.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/events/Events5$AnotherEventHandler.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/events/Events5.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/events/Events5.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/events/eventframework/Event.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/events/eventframework/Event.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/events/eventframework/EventDriver.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/events/eventframework/EventDriver.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/events/eventframework/EventHandler.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/events/eventframework/EventHandler.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/events/eventframework/EventHandler.java: -------------------------------------------------------------------------------- 1 | package eventframework; 2 | 3 | /** 4 | * Created by neville on 01/11/2016. 5 | */ 6 | public interface EventHandler { 7 | } 8 | -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/events/eventframework/UninitialisedEvent.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/events/eventframework/UninitialisedEvent.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/events/events/NewEntityEvent.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/events/events/NewEntityEvent.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/events/events/NewTransactionEvent.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/events/events/NewTransactionEvent.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/jinfoflow/events/events/UnusedEvent.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/jinfoflow/events/events/UnusedEvent.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/log4j2.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/log4j2.xml -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/BasicTestCase.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/BasicTestCase.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/MicroTestCase.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/MicroTestCase.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/aliasing/Aliasing1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/aliasing/Aliasing1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/aliasing/Aliasing2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/aliasing/Aliasing2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/aliasing/Aliasing3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/aliasing/Aliasing3.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/aliasing/Aliasing4.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/aliasing/Aliasing4.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/aliasing/Aliasing5.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/aliasing/Aliasing5.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/aliasing/Aliasing6.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/aliasing/Aliasing6.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/arrays/Arrays1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/arrays/Arrays1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/arrays/Arrays10.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/arrays/Arrays10.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/arrays/Arrays2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/arrays/Arrays2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/arrays/Arrays3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/arrays/Arrays3.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/arrays/Arrays4.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/arrays/Arrays4.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/arrays/Arrays5.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/arrays/Arrays5.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/arrays/Arrays6.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/arrays/Arrays6.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/arrays/Arrays7.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/arrays/Arrays7.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/arrays/Arrays8.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/arrays/Arrays8.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/arrays/Arrays9.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/arrays/Arrays9.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic10.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic10.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic11.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic11.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic12.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic12.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic13.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic13.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic14.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic14.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic15.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic15.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic16$Widget.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic16$Widget.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic16.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic16.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic17$Widget.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic17$Widget.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic17.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic17.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic18.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic18.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic19.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic19.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic20.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic20.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic21.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic21.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic22.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic22.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic23.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic23.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic24.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic24.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic25.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic25.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic26.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic26.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic27.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic27.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic28.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic28.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic29$Node.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic29$Node.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic29.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic29.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic3.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic30$Data.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic30$Data.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic30.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic30.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic31$Data.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic31$Data.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic31.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic31.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic32.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic32.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic33.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic33.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic34.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic34.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic35.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic35.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic36.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic36.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic37.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic37.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic38.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic38.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic39.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic39.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic4.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic4.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic40.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic40.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic41.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic41.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic42.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic42.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic5.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic5.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic6.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic6.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic7.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic7.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic8.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic8.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/basic/Basic9.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/basic/Basic9.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/collections/Collections1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/collections/Collections1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/collections/Collections10.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/collections/Collections10.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/collections/Collections11.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/collections/Collections11.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/collections/Collections11b.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/collections/Collections11b.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/collections/Collections12.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/collections/Collections12.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/collections/Collections13.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/collections/Collections13.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/collections/Collections14.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/collections/Collections14.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/collections/Collections2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/collections/Collections2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/collections/Collections3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/collections/Collections3.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/collections/Collections4.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/collections/Collections4.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/collections/Collections5.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/collections/Collections5.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/collections/Collections6.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/collections/Collections6.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/collections/Collections7.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/collections/Collections7.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/collections/Collections8.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/collections/Collections8.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/collections/Collections9.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/collections/Collections9.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures1$C.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures1$C.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures2$C.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures2$C.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures3$C.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures3$C.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures3.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures4$C.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures4$C.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures4.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures4.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures5$C.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures5$C.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures5.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures5.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures6$C.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures6$C.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures6.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/datastructures/Datastructures6.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/factories/Factories1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/factories/Factories1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/factories/Factories2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/factories/Factories2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/factories/Factories3$StringWrapper.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/factories/Factories3$StringWrapper.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/factories/Factories3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/factories/Factories3.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/inter/Inter1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/inter/Inter1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/inter/Inter10.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/inter/Inter10.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/inter/Inter11.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/inter/Inter11.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/inter/Inter12.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/inter/Inter12.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/inter/Inter13.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/inter/Inter13.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/inter/Inter14.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/inter/Inter14.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/inter/Inter2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/inter/Inter2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/inter/Inter3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/inter/Inter3.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/inter/Inter4.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/inter/Inter4.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/inter/Inter5.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/inter/Inter5.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/inter/Inter6$ReflectivelyCreated.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/inter/Inter6$ReflectivelyCreated.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/inter/Inter6.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/inter/Inter6.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/inter/Inter7$Base.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/inter/Inter7$Base.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/inter/Inter7$ReflectivelyCreated.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/inter/Inter7$ReflectivelyCreated.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/inter/Inter7.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/inter/Inter7.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/inter/Inter8.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/inter/Inter8.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/inter/Inter9.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/inter/Inter9.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/pred/Pred1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/pred/Pred1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/pred/Pred2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/pred/Pred2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/pred/Pred3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/pred/Pred3.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/pred/Pred4.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/pred/Pred4.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/pred/Pred5.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/pred/Pred5.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/pred/Pred6.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/pred/Pred6.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/pred/Pred7.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/pred/Pred7.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/pred/Pred8.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/pred/Pred8.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/pred/Pred9.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/pred/Pred9.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/refl/Refl1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/refl/Refl1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/refl/Refl2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/refl/Refl2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/refl/Refl3$ReflectivelyCreated.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/refl/Refl3$ReflectivelyCreated.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/refl/Refl3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/refl/Refl3.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/refl/Refl4$ReflectivelyCreated.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/refl/Refl4$ReflectivelyCreated.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/refl/Refl4.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/refl/Refl4.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/sanitizers/Sanitizers1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/sanitizers/Sanitizers1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/sanitizers/Sanitizers2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/sanitizers/Sanitizers2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/sanitizers/Sanitizers3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/sanitizers/Sanitizers3.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/sanitizers/Sanitizers4.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/sanitizers/Sanitizers4.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/sanitizers/Sanitizers5.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/sanitizers/Sanitizers5.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/sanitizers/Sanitizers6.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/sanitizers/Sanitizers6.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/session/Session1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/session/Session1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/session/Session2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/session/Session2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/session/Session3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/session/Session3.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/strongupdates/StrongUpdates1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/strongupdates/StrongUpdates1.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/strongupdates/StrongUpdates2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/strongupdates/StrongUpdates2.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/strongupdates/StrongUpdates3$Widget.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/strongupdates/StrongUpdates3$Widget.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/strongupdates/StrongUpdates3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/strongupdates/StrongUpdates3.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/strongupdates/StrongUpdates4.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/strongupdates/StrongUpdates4.class -------------------------------------------------------------------------------- /benchmarks/src/test/resources/securibench/micro/strongupdates/StrongUpdates5.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/benchmarks/src/test/resources/securibench/micro/strongupdates/StrongUpdates5.class -------------------------------------------------------------------------------- /c2cpg.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/c2cpg.sh -------------------------------------------------------------------------------- /console/src/main/scala/io/joern/console/SLProduct.scala: -------------------------------------------------------------------------------- 1 | package io.joern.console 2 | 3 | sealed trait SLProduct { def name: String } 4 | case object OcularProduct extends SLProduct { val name: String = "ocular" } 5 | case object JoernProduct extends SLProduct { val name: String = "joern" } 6 | -------------------------------------------------------------------------------- /console/src/test/resources/nonzip.zip: -------------------------------------------------------------------------------- 1 | foo 2 | -------------------------------------------------------------------------------- /console/src/test/resources/scripts/general/arguments-concatenate.sc: -------------------------------------------------------------------------------- 1 | @main def main(one: String, two: String) = { 2 | s"$one $two" 3 | } 4 | -------------------------------------------------------------------------------- /console/src/test/resources/scripts/general/divide_by_zero.sc: -------------------------------------------------------------------------------- 1 | @main def main() = { 2 | 5 / 0 3 | } 4 | -------------------------------------------------------------------------------- /console/src/test/resources/scripts/general/general_plus/scripts.json: -------------------------------------------------------------------------------- 1 | { 2 | "description": "Even more general purpose scripts.", 3 | "scripts": [] 4 | } -------------------------------------------------------------------------------- /console/src/test/resources/scripts/general/list-funcs.sc: -------------------------------------------------------------------------------- 1 | @main def main() = { 2 | cpg.method.name.l 3 | } 4 | -------------------------------------------------------------------------------- /console/src/test/resources/scripts/general/scripts.json: -------------------------------------------------------------------------------- 1 | { 2 | "description": "A collection of general purpose scripts.", 3 | "scripts": [ 4 | { 5 | "name": "list-funcs.sc", 6 | "description": "Lists all functions." 7 | } 8 | ] 9 | } -------------------------------------------------------------------------------- /console/src/test/resources/scripts/java/list-sl-ns.sc: -------------------------------------------------------------------------------- 1 | @main def main() = { 2 | cpg.namespace.name(".*shiftleft.*").l 3 | } 4 | -------------------------------------------------------------------------------- /console/src/test/resources/scripts/java/scripts.json: -------------------------------------------------------------------------------- 1 | { 2 | "description": "A collection of java-specific scripts.", 3 | "scripts": [ 4 | { 5 | "name": "list-sl-ns.sc", 6 | "description": "Lists all shiftleft namespaces." 7 | } 8 | ] 9 | } -------------------------------------------------------------------------------- /console/src/test/resources/test.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/console/src/test/resources/test.zip -------------------------------------------------------------------------------- /console/src/test/scala/io/joern/console/workspacehandling/TestLoader.scala: -------------------------------------------------------------------------------- 1 | package io.joern.console.workspacehandling 2 | 3 | import java.nio.file.Path 4 | 5 | object TestLoader { 6 | def apply(): TestLoader = { 7 | new TestLoader() 8 | } 9 | } 10 | 11 | class TestLoader extends WorkspaceLoader[Project] { 12 | override def createProject(projectFile: ProjectFile, path: Path): Project = { 13 | Project(projectFile, path) 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /dataflowengineoss/src/main/scala/io/joern/dataflowengineoss/passes/reachingdef/package.scala: -------------------------------------------------------------------------------- 1 | package io.joern.dataflowengineoss.passes 2 | 3 | package object reachingdef { 4 | type Definition = Int 5 | } 6 | -------------------------------------------------------------------------------- /joern: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern -------------------------------------------------------------------------------- /joern-cli/frontends/c2cpg/c2cpg.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | 3 | SCRIPT_ABS_PATH=$(readlink -f "$0") 4 | SCRIPT_ABS_DIR=$(dirname $SCRIPT_ABS_PATH) 5 | 6 | $SCRIPT_ABS_DIR/target/universal/stage/bin/c2cpg -J-XX:+UseG1GC -J-XX:CompressedClassSpaceSize=128m -J-XX:+UseStringDeduplication $@ 7 | -------------------------------------------------------------------------------- /joern-cli/frontends/c2cpg/src/main/resources/log4j2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /joern-cli/frontends/c2cpg/src/main/scala/io/joern/c2cpg/astcreation/Defines.scala: -------------------------------------------------------------------------------- 1 | package io.joern.c2cpg.astcreation 2 | 3 | object Defines { 4 | val anyTypeName: String = "ANY" 5 | val voidTypeName: String = "void" 6 | val qualifiedNameSeparator: String = "::" 7 | val empty = "" 8 | } 9 | -------------------------------------------------------------------------------- /joern-cli/frontends/c2cpg/src/main/scala/io/joern/c2cpg/parser/DefaultDefines.scala: -------------------------------------------------------------------------------- 1 | package io.joern.c2cpg.parser 2 | 3 | object DefaultDefines { 4 | val DEFAULT_CALL_CONVENTIONS: Map[String, String] = Map( 5 | "__fastcall" -> "__attribute((fastcall))", 6 | "__cdecl" -> "__attribute((cdecl))", 7 | "__pascal" -> "__attribute((pascal))" 8 | ) 9 | } 10 | -------------------------------------------------------------------------------- /joern-cli/frontends/c2cpg/src/test/resources/log4j2-test.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /joern-cli/frontends/csharpsrc2cpg/csharpsrc2cpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/csharpsrc2cpg/csharpsrc2cpg -------------------------------------------------------------------------------- /joern-cli/frontends/csharpsrc2cpg/csharpsrc2cpg.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | 3 | SCRIPT_ABS_PATH=$(readlink -f "$0") 4 | SCRIPT_ABS_DIR=$(dirname $SCRIPT_ABS_PATH) 5 | 6 | $SCRIPT_ABS_DIR/target/universal/stage/bin/csharpsrc2cpg -J-XX:+UseG1GC -J-XX:CompressedClassSpaceSize=128m -J-XX:+UseStringDeduplication $@ 7 | -------------------------------------------------------------------------------- /joern-cli/frontends/csharpsrc2cpg/src/main/resources/application.conf: -------------------------------------------------------------------------------- 1 | csharpsrc2cpg { 2 | dotnetastgen_version: "0.13.0" 3 | } 4 | -------------------------------------------------------------------------------- /joern-cli/frontends/csharpsrc2cpg/src/main/scala/io/joern/csharpsrc2cpg/datastructures/ScopeType.scala: -------------------------------------------------------------------------------- 1 | package io.joern.csharpsrc2cpg.datastructures 2 | 3 | sealed trait ScopeType 4 | 5 | case class NamespaceScope(fullName: String) extends ScopeType 6 | 7 | case class TypeScope(fullName: String) extends ScopeType 8 | 9 | case class MethodScope(fullName: String) extends ScopeType 10 | 11 | object BlockScope extends ScopeType 12 | -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/main/scala/io/joern/ghidra2cpg/processors/Processor.scala: -------------------------------------------------------------------------------- 1 | package io.joern.ghidra2cpg.processors 2 | 3 | import scala.collection.mutable 4 | 5 | trait Processor { 6 | def getInstructions: mutable.HashMap[String, String] 7 | } 8 | -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/resources/log4j2-test.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/scala/io/joern/ghidra2cpg/querying/arm/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/scala/io/joern/ghidra2cpg/querying/arm/.gitkeep -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/coverage/linux/arm/32_git: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/coverage/linux/arm/32_git -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/coverage/linux/mips/32_curl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/coverage/linux/mips/32_curl -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/coverage/linux/x86/64_git: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/coverage/linux/x86/64_git -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/coverage/linux/x86/curl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/coverage/linux/x86/curl -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/coverage/windows/32_curl.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/coverage/windows/32_curl.exe -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/coverage/windows/32_git.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/coverage/windows/32_git.exe -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/coverage/windows/64_curl.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/coverage/windows/64_curl.exe -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/coverage/windows/64_git.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/coverage/windows/64_git.exe -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/arm/aarch64_bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/arm/aarch64_bin -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/arm/sprintf_test_32: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/arm/sprintf_test_32 -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/mips/84_div_2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/mips/84_div_2 -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/mips/backdoor.mips: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/mips/backdoor.mips -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/mips/mips32_memcpy_test.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/mips/mips32_memcpy_test.bin -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/mips/mips_bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/mips/mips_bin -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/mips/t1_to_t9: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/mips/t1_to_t9 -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/x86/32/x86_32_bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/x86/32/x86_32_bin -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/x86/32/x86_32_bin_dwarf2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/x86/32/x86_32_bin_dwarf2 -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/x86/32/x86_32_bin_dwarf3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/x86/32/x86_32_bin_dwarf3 -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/x86/32/x86_32_bin_dwarf4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/x86/32/x86_32_bin_dwarf4 -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/x86/32/x86_32_bin_dwarf5: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/x86/32/x86_32_bin_dwarf5 -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/x86/64/cfg.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/x86/64/cfg.bin -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/x86/64/git: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/x86/64/git -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/x86/64/x86_64.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/x86/64/x86_64.bin -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/x86/64/xpdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/linux/x86/64/xpdf -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/source/cfg.asm: -------------------------------------------------------------------------------- 1 | ;; Built with `nasm -felf64 cfg.asm -g` and `gcc cfg.o -o cfg.bin` 2 | global main 3 | 4 | section .text 5 | 6 | main: 7 | push rbp 8 | mov rbp, rsp 9 | mov rcx, 10 10 | xor rax, rax 11 | 12 | .loop: 13 | cmp rcx, 0 14 | jle .end 15 | add rax, 2 16 | sub rcx, 1 17 | jmp .loop 18 | 19 | .end: 20 | mov rsp, rbp 21 | pop rbp 22 | ret 23 | -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/source/sprintf_test.c: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | // The code is vulnerable on purpose 4 | int main (int argc, char**argv) { 5 | char buf[30]; 6 | 7 | sprintf(buf, "Provided value = %s", argv[1]); 8 | puts(buf); 9 | 10 | return(0); 11 | } 12 | -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/windows/32/git.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/windows/32/git.exe -------------------------------------------------------------------------------- /joern-cli/frontends/ghidra2cpg/src/test/testbinaries/windows/64/git.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/ghidra2cpg/src/test/testbinaries/windows/64/git.exe -------------------------------------------------------------------------------- /joern-cli/frontends/gosrc2cpg/README.md: -------------------------------------------------------------------------------- 1 | # gosrc2cpg 2 | 3 | -------------------------------------------------------------------------------- /joern-cli/frontends/gosrc2cpg/gosrc2cpg.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | 3 | SCRIPT_ABS_PATH=$(readlink -f "$0") 4 | SCRIPT_ABS_DIR=$(dirname $SCRIPT_ABS_PATH) 5 | 6 | $SCRIPT_ABS_DIR/target/universal/stage/bin/gosrc2cpg -J-XX:+UseG1GC -J-XX:CompressedClassSpaceSize=128m -J-XX:+UseStringDeduplication $@ 7 | -------------------------------------------------------------------------------- /joern-cli/frontends/gosrc2cpg/src/main/resources/application.conf: -------------------------------------------------------------------------------- 1 | gosrc2cpg { 2 | goastgen_version: "0.12.0" 3 | } 4 | -------------------------------------------------------------------------------- /joern-cli/frontends/gosrc2cpg/src/main/resources/log4j2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /joern-cli/frontends/gosrc2cpg/src/main/scala/io/joern/gosrc2cpg/utils/Constants.scala: -------------------------------------------------------------------------------- 1 | package io.joern.gosrc2cpg.utils 2 | 3 | import java.io.File 4 | import java.util.regex.Pattern 5 | 6 | object UtilityConstants { 7 | val fileSeparateorPattern = Pattern.quote(File.separator) 8 | } 9 | object Operator { 10 | val unknown = ".unknown" 11 | } 12 | -------------------------------------------------------------------------------- /joern-cli/frontends/gosrc2cpg/src/test/resources/log4j2-test.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /joern-cli/frontends/ida2cpg/README.md: -------------------------------------------------------------------------------- 1 | # ida2cpg 2 | 3 | A ida to CPG converter. 4 | -------------------------------------------------------------------------------- /joern-cli/frontends/ida2cpg/ida2cpg: -------------------------------------------------------------------------------- 1 | ./target/universal/stage/bin/ida2cpg -------------------------------------------------------------------------------- /joern-cli/frontends/ida2cpg/ida2cpg.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | 3 | SCRIPT_ABS_PATH=$(readlink -f "$0") 4 | SCRIPT_ABS_DIR=$(dirname $SCRIPT_ABS_PATH) 5 | LOG4J2_CONFIG="${SCRIPT_ABS_DIR}/src/main/resources/log4j2.xml" 6 | 7 | "${SCRIPT_ABS_DIR}/target/universal/stage/bin/ida2cpg" -Dlog4j2.formatMsgNoLookups=true -Dlog4j.configurationFile="${LOG4J2_CONFIG}" "$@" 8 | -------------------------------------------------------------------------------- /joern-cli/frontends/ida2cpg/src/main/resources/log4j2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/javasrc2cpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/javasrc2cpg/javasrc2cpg -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/main/resources/log4j2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/main/scala/io/joern/javasrc2cpg/astcreation/declarations/AstForDeclarationsCreator.scala: -------------------------------------------------------------------------------- 1 | package io.joern.javasrc2cpg.astcreation.declarations 2 | import io.joern.javasrc2cpg.astcreation.AstCreator 3 | 4 | trait AstForDeclarationsCreator extends AstForTypeDeclsCreator with AstForMethodsCreator { this: AstCreator => } 5 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/main/scala/io/joern/javasrc2cpg/util/NameConstants.scala: -------------------------------------------------------------------------------- 1 | package io.joern.javasrc2cpg.util 2 | 3 | object NameConstants { 4 | val Super: String = "super" 5 | val This: String = "this" 6 | val WildcardImportName: String = "*" 7 | val Unknown = "" 8 | val OuterClass = "outerClass" 9 | } 10 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/java/io/joern/javasrc2cpg/jartypereader/testcode/genericclasses/Test.java: -------------------------------------------------------------------------------- 1 | package io.joern.javasrc2cpg.jartypereader.testcode.genericclasses; 2 | 3 | class Foo {} 4 | 5 | public class Test extends Foo {} 6 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/java/io/joern/javasrc2cpg/jartypereader/testcode/genericmethods/Test.java: -------------------------------------------------------------------------------- 1 | package io.joern.javasrc2cpg.jartypereader.testcode.genericmethods; 2 | 3 | public class Test { 4 | 5 | public String foo(S s, T t) { 6 | return s.toString() + t.toString(); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/java/io/joern/javasrc2cpg/jartypereader/testcode/nongenericinterface/Test.java: -------------------------------------------------------------------------------- 1 | package io.joern.javasrc2cpg.jartypereader.testcode.nongenericinterface; 2 | 3 | interface Foo {} 4 | 5 | public class Test implements Foo { } 6 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/java/io/joern/javasrc2cpg/jartypereader/testcode/nongenericwithsuperclass/Test.java: -------------------------------------------------------------------------------- 1 | package io.joern.javasrc2cpg.jartypereader.testcode.nongenericwithsuperclass; 2 | 3 | class Foo {} 4 | 5 | public class Test extends Foo implements Comparable { 6 | 7 | @Override 8 | public int compareTo(Object o) { 9 | return 0; 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/java/io/joern/javasrc2cpg/jartypereader/testcode/overloadedmethods/Test.java: -------------------------------------------------------------------------------- 1 | package io.joern.javasrc2cpg.jartypereader.testcode.overloadedmethods; 2 | 3 | public class Test { 4 | public void foo(S s) { 5 | System.out.println("IN S"); 6 | } 7 | public void foo(T t) { 8 | System.out.println("IN T"); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/java/io/joern/javasrc2cpg/jartypereader/testcode/simplegeneric/Test.java: -------------------------------------------------------------------------------- 1 | package io.joern.javasrc2cpg.jartypereader.testcode.simplegeneric; 2 | 3 | public class Test { 4 | 5 | public S foo(S s, T t) { 6 | return s; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/java/io/joern/javasrc2cpg/jartypereader/testcode/simplenongeneric/Test.java: -------------------------------------------------------------------------------- 1 | package io.joern.javasrc2cpg.jartypereader.testcode.simplenongeneric; 2 | 3 | public class Test { 4 | public int add(int x, int y) { 5 | return x + y; 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/java/io/joern/javasrc2cpg/jartypereader/testcode/wildcards/Test.java: -------------------------------------------------------------------------------- 1 | package io.joern.javasrc2cpg.jartypereader.testcode.wildcards; 2 | 3 | import java.util.List; 4 | public class Test { 5 | List noType; 6 | List unboundWildcard; 7 | List boundAbove; 8 | List boundBelow; 9 | } 10 | 11 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/resources/Deps.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/javasrc2cpg/src/test/resources/Deps.jar -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/resources/config_tests/application.conf: -------------------------------------------------------------------------------- 1 | basic conf 2 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/resources/config_tests/basic.jsp: -------------------------------------------------------------------------------- 1 | basic jsp 2 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/resources/config_tests/basic.properties: -------------------------------------------------------------------------------- 1 | key=value 2 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/resources/config_tests/basic.tf: -------------------------------------------------------------------------------- 1 | basic tf 2 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/resources/config_tests/basic.tfvars: -------------------------------------------------------------------------------- 1 | basic tfvars 2 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/resources/config_tests/basic.vm: -------------------------------------------------------------------------------- 1 | basic velocity 2 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/resources/config_tests/basic.yaml: -------------------------------------------------------------------------------- 1 | key: value 2 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/resources/config_tests/basic.yml: -------------------------------------------------------------------------------- 1 | key: value 2 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/resources/config_tests/batis/conf.xml: -------------------------------------------------------------------------------- 1 | basic batis conf 2 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/resources/config_tests/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | plugins { 3 | id 'com.android.application' version '7.3.1' apply false 4 | id 'com.android.library' version '7.3.1' apply false 5 | id 'org.jetbrains.kotlin.android' version '1.7.20' apply false 6 | } 7 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/resources/config_tests/build.gradle.kts: -------------------------------------------------------------------------------- 1 | apply(plugin = "java-library") 2 | 3 | configure { 4 | named("main") { 5 | java.srcDir("src/core/java") 6 | } 7 | } 8 | 9 | configure { 10 | sourceCompatibility = JavaVersion.VERSION_11 11 | targetCompatibility = JavaVersion.VERSION_11 12 | } 13 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/resources/config_tests/dwr.xml: -------------------------------------------------------------------------------- 1 | basic dwr 2 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/resources/config_tests/faces-config.xml: -------------------------------------------------------------------------------- 1 | basic jsf 2 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/resources/config_tests/nested/nested.properties: -------------------------------------------------------------------------------- 1 | basic nested properties 2 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/resources/config_tests/no-conf-1.xml: -------------------------------------------------------------------------------- 1 | should not find 2 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/resources/config_tests/no-conf-2.conf: -------------------------------------------------------------------------------- 1 | should not find 2 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/resources/config_tests/routes: -------------------------------------------------------------------------------- 1 | basic routes 2 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/resources/config_tests/struts.xml: -------------------------------------------------------------------------------- 1 | basic struts 2 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/resources/config_tests/web.xml: -------------------------------------------------------------------------------- 1 | basic xml 2 | -------------------------------------------------------------------------------- /joern-cli/frontends/javasrc2cpg/src/test/resources/log4j2-test.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /joern-cli/frontends/jimple2cpg/AUTHORS: -------------------------------------------------------------------------------- 1 | David Baker Effendi 2 | Fabian Yamaguchi 3 | -------------------------------------------------------------------------------- /joern-cli/frontends/jimple2cpg/jimple2cpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/jimple2cpg/jimple2cpg -------------------------------------------------------------------------------- /joern-cli/frontends/jimple2cpg/src/test/resources/log4j2-test.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /joern-cli/frontends/jimple2cpg/src/test/resources/project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.5.2 2 | -------------------------------------------------------------------------------- /joern-cli/frontends/jimple2cpg/src/test/resources/unpacking/HelloWorld.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/jimple2cpg/src/test/resources/unpacking/HelloWorld.jar -------------------------------------------------------------------------------- /joern-cli/frontends/jimple2cpg/src/test/resources/unpacking/NestedHelloWorld.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/jimple2cpg/src/test/resources/unpacking/NestedHelloWorld.jar -------------------------------------------------------------------------------- /joern-cli/frontends/jimple2cpg/src/test/resources/unpacking/helloworld/Bar.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/jimple2cpg/src/test/resources/unpacking/helloworld/Bar.class -------------------------------------------------------------------------------- /joern-cli/frontends/jimple2cpg/src/test/resources/unpacking/helloworld/Foo.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/jimple2cpg/src/test/resources/unpacking/helloworld/Foo.class -------------------------------------------------------------------------------- /joern-cli/frontends/jimple2cpg/src/test/resources/unpacking/slippy.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/jimple2cpg/src/test/resources/unpacking/slippy.zip -------------------------------------------------------------------------------- /joern-cli/frontends/jssrc2cpg/jssrc2cpg.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | 3 | SCRIPT_ABS_PATH=$(readlink -f "$0") 4 | SCRIPT_ABS_DIR=$(dirname $SCRIPT_ABS_PATH) 5 | 6 | $SCRIPT_ABS_DIR/target/universal/stage/bin/jssrc2cpg -J-XX:+UseG1GC -J-XX:CompressedClassSpaceSize=128m -J-XX:+UseStringDeduplication $@ 7 | -------------------------------------------------------------------------------- /joern-cli/frontends/jssrc2cpg/src/main/resources/application.conf: -------------------------------------------------------------------------------- 1 | jssrc2cpg { 2 | astgen_version: "3.14.0" 3 | } 4 | -------------------------------------------------------------------------------- /joern-cli/frontends/jssrc2cpg/src/main/resources/log4j2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /joern-cli/frontends/jssrc2cpg/src/main/scala/io/joern/jssrc2cpg/datastructures/ResolvedReference.scala: -------------------------------------------------------------------------------- 1 | package io.joern.jssrc2cpg.datastructures 2 | 3 | import io.shiftleft.codepropertygraph.generated.nodes.NewNode 4 | 5 | case class ResolvedReference(variableNodeId: NewNode, origin: PendingReference) 6 | -------------------------------------------------------------------------------- /joern-cli/frontends/jssrc2cpg/src/main/scala/io/joern/jssrc2cpg/datastructures/ScopeType.scala: -------------------------------------------------------------------------------- 1 | package io.joern.jssrc2cpg.datastructures 2 | 3 | sealed trait ScopeType 4 | object MethodScope extends ScopeType 5 | object BlockScope extends ScopeType 6 | -------------------------------------------------------------------------------- /joern-cli/frontends/jssrc2cpg/src/main/scala/io/joern/jssrc2cpg/parser/BabelNodeInfo.scala: -------------------------------------------------------------------------------- 1 | package io.joern.jssrc2cpg.parser 2 | 3 | import io.joern.jssrc2cpg.parser.BabelAst.BabelNode 4 | import ujson.Value 5 | 6 | case class BabelNodeInfo( 7 | node: BabelNode, 8 | json: Value, 9 | code: String, 10 | lineNumber: Option[Integer], 11 | columnNumber: Option[Integer], 12 | lineNumberEnd: Option[Integer], 13 | columnNumberEnd: Option[Integer] 14 | ) 15 | -------------------------------------------------------------------------------- /joern-cli/frontends/jssrc2cpg/src/main/scala/io/joern/jssrc2cpg/passes/EcmaBuiltins.scala: -------------------------------------------------------------------------------- 1 | package io.joern.jssrc2cpg.passes 2 | 3 | object EcmaBuiltins { 4 | val arrayFactory = "__ecma.Array.factory" 5 | } 6 | -------------------------------------------------------------------------------- /joern-cli/frontends/jssrc2cpg/src/test/resources/log4j2-test.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /joern-cli/frontends/jssrc2cpg/src/test/scala/io/joern/jssrc2cpg/testfixtures/JsCfgTestCpg.scala: -------------------------------------------------------------------------------- 1 | package io.joern.jssrc2cpg.testfixtures 2 | 3 | import io.joern.x2cpg.testfixtures.CfgTestCpg 4 | 5 | class JsCfgTestCpg extends CfgTestCpg with JsSrc2CpgFrontend { 6 | override val fileSuffix: String = ".js" 7 | } 8 | -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/.scalafmt.conf: -------------------------------------------------------------------------------- 1 | version = "2.7.4" 2 | maxColumn = 100 3 | align = true 4 | -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/kotlin2cpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/kotlin2cpg -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/kotlin2cpg.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Script starts here 4 | 5 | readonly SCRIPT_DIR=$(dirname "$(realpath "$0")") 6 | readonly BIN="${SCRIPT_DIR}/target/universal/stage/bin/kotlin2cpg" 7 | readonly LOG4J2_CONFIG="${SCRIPT_DIR}/src/main/resources/log4j2.xml" 8 | 9 | "${BIN}" -Dlog4j2.formatMsgNoLookups=true -Dlog4j.configurationFile="${LOG4J2_CONFIG}" \ 10 | "$@" 11 | -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/main/resources/jars/kotlin-stdlib-1.9.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/src/main/resources/jars/kotlin-stdlib-1.9.0.jar -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/main/resources/jars/kotlin-stdlib-common-1.9.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/src/main/resources/jars/kotlin-stdlib-common-1.9.0.jar -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/main/resources/jars/kotlin-stdlib-jdk8-1.9.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/src/main/resources/jars/kotlin-stdlib-jdk8-1.9.0.jar -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/main/scala/io/joern/kotlin2cpg/types/CallKinds.scala: -------------------------------------------------------------------------------- 1 | package io.joern.kotlin2cpg.types 2 | 3 | object CallKinds extends Enumeration { 4 | type CallKind = Value 5 | val Unknown, StaticCall, DynamicCall, ExtensionCall = Value 6 | } 7 | 8 | class CallKinds {} 9 | -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/main/scala/io/joern/kotlin2cpg/types/NameReferenceKinds.scala: -------------------------------------------------------------------------------- 1 | package io.joern.kotlin2cpg.types 2 | 3 | object NameReferenceKinds extends Enumeration { 4 | type NameReferenceKind = Value 5 | val Unknown, ClassName, EnumEntry, LocalVariable, Property = Value 6 | } 7 | -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/main/scala/io/joern/kotlin2cpg/utils/PathUtils.scala: -------------------------------------------------------------------------------- 1 | package io.joern.kotlin2cpg.utils 2 | 3 | import java.nio.file.Paths 4 | 5 | object PathUtils { 6 | def relativize(sourceDir: String, filename: String): String = { 7 | val pathAbsolute = Paths.get(filename).toAbsolutePath 8 | val pathBase = Paths.get(sourceDir).toAbsolutePath 9 | pathBase.relativize(pathAbsolute).toString 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/mipmap-hdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/mipmap-hdpi/ic_launcher.webp -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/mipmap-mdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/mipmap-mdpi/ic_launcher.webp -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/mipmap-xhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/mipmap-xhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | My Application 3 | -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/app/src/main/res/xml/network_security_config.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | phrack.org 5 | 6 | 7 | -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Wed Mar 09 15:06:06 CET 2022 2 | distributionBase=GRADLE_USER_HOME 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-bin.zip 4 | distributionPath=wrapper/dists 5 | zipStorePath=wrapper/dists 6 | zipStoreBase=GRADLE_USER_HOME 7 | -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/barebone_android_app/settings.gradle: -------------------------------------------------------------------------------- 1 | dependencyResolutionManagement { 2 | repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) 3 | repositories { 4 | google() 5 | mavenCentral() 6 | jcenter() // Warning: this repository is going to shut down soon 7 | } 8 | } 9 | rootProject.name = "My Application" 10 | include ':app' 11 | -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/ktmin/README: -------------------------------------------------------------------------------- 1 | ## ktmin 2 | 3 | ### setup 4 | 5 | ``` 6 | gradle wrapper 7 | ``` 8 | 9 | ### running 10 | 11 | ``` 12 | ./gradlew run 13 | ``` 14 | -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/ktmin/dependencies/annotations-13.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/src/test/resources/code/ktmin/dependencies/annotations-13.0.jar -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/ktmin/dependencies/gson-2.9.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/src/test/resources/code/ktmin/dependencies/gson-2.9.0.jar -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/ktmin/dependencies/kotlin-stdlib-1.5.31.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/src/test/resources/code/ktmin/dependencies/kotlin-stdlib-1.5.31.jar -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/ktmin/dependencies/kotlin-stdlib-common-1.5.31.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/src/test/resources/code/ktmin/dependencies/kotlin-stdlib-common-1.5.31.jar -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/ktmin/dependencies/kotlin-stdlib-jdk7-1.5.31.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/src/test/resources/code/ktmin/dependencies/kotlin-stdlib-jdk7-1.5.31.jar -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/ktmin/dependencies/kotlin-stdlib-jdk8-1.5.31.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/src/test/resources/code/ktmin/dependencies/kotlin-stdlib-jdk8-1.5.31.jar -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/ktmin/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'ktmin' 2 | -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/with_kotlin_all_open_plugin/Hello.kt: -------------------------------------------------------------------------------- 1 | package io.joern.placeholder 2 | 3 | annotation class AllOpenAnnotation 4 | @AllOpenAnnotation 5 | class WithAnnotation 6 | 7 | class AClass : WithAnnotation() // compiler spits out error if `all-open` plugin not set up 8 | 9 | fun main() { 10 | println("Hello, world!") 11 | } 12 | 13 | -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/code/with_kotlin_script/src/hello_world.kt: -------------------------------------------------------------------------------- 1 | package mypkg 2 | 3 | fun main(args: Array) { 4 | println("Hello, world!") 5 | } 6 | 7 | -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/jars/http4k-core-4.14.1.4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/src/test/resources/jars/http4k-core-4.14.1.4.jar -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/jars/javalin-4.1.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/kotlin2cpg/src/test/resources/jars/javalin-4.1.1.jar -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/resources/log4j2-test.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /joern-cli/frontends/kotlin2cpg/src/test/scala/io/joern/kotlin2cpg/project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.5.1 2 | -------------------------------------------------------------------------------- /joern-cli/frontends/php2cpg/php-parse.bat: -------------------------------------------------------------------------------- 1 | vendor/bin/php-parse.bat -------------------------------------------------------------------------------- /joern-cli/frontends/php2cpg/php2cpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/php2cpg/php2cpg -------------------------------------------------------------------------------- /joern-cli/frontends/php2cpg/src/main/resources/php.ini: -------------------------------------------------------------------------------- 1 | ; Uncap memory to avoid OOM errors when parsing large files 2 | memory_limit = -1 -------------------------------------------------------------------------------- /joern-cli/frontends/php2cpg/src/main/scala/io/joern/php2cpg/astcreation/PhpBuiltins.scala: -------------------------------------------------------------------------------- 1 | package io.joern.php2cpg.astcreation 2 | 3 | import io.shiftleft.utils.IOUtils 4 | 5 | import scala.io.Source 6 | 7 | object PhpBuiltins { 8 | lazy val FuncNames: Set[String] = { 9 | Source.fromResource("builtin_functions.txt").getLines().toSet 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /joern-cli/frontends/php2cpg/src/test/resources/builtin_functions.txt: -------------------------------------------------------------------------------- 1 | abs -------------------------------------------------------------------------------- /joern-cli/frontends/pysrc2cpg/README.md: -------------------------------------------------------------------------------- 1 | Stage and run: 2 | - Build and assemble pysrc2cpg for local execution: sbt pysrc2cpg/stage 3 | - Run: ./pysrc2cpg.sh -o 4 | 5 | Shortcomings of Python CPG representation: 6 | - No named parameter support 7 | - Incorrect instance argument for call like x.func. 8 | See source code comment. 9 | - No handling of __getattr__, __setattr__, etc. 10 | -------------------------------------------------------------------------------- /joern-cli/frontends/pysrc2cpg/pysrc2cpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/pysrc2cpg/pysrc2cpg -------------------------------------------------------------------------------- /joern-cli/frontends/pysrc2cpg/pysrc2cpg.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Script starts here 4 | 5 | readonly SCRIPT_DIR=$(dirname "$(realpath "$0")") 6 | readonly BIN="${SCRIPT_DIR}/target/universal/stage/bin/pysrc2cpg" 7 | readonly LOG4J2_CONFIG="${SCRIPT_DIR}/src/main/resources/log4j2.xml" 8 | 9 | "${BIN}" -Dlog4j2.formatMsgNoLookups=true -Dlog4j.configurationFile="${LOG4J2_CONFIG}" \ 10 | "$@" 11 | -------------------------------------------------------------------------------- /joern-cli/frontends/pysrc2cpg/src/main/java/io/joern/pythonparser/PositionToken.java: -------------------------------------------------------------------------------- 1 | package io.joern.pythonparser; 2 | 3 | public class PositionToken { 4 | public int startPos = -1; 5 | // Non inclusive. Points behind the last token character. 6 | public int endPos = -1; 7 | } 8 | -------------------------------------------------------------------------------- /joern-cli/frontends/pysrc2cpg/src/main/scala/io/joern/pysrc2cpg/AutoIncIndex.scala: -------------------------------------------------------------------------------- 1 | package io.joern.pysrc2cpg 2 | 3 | class AutoIncIndex(private var index: Int) { 4 | def getAndInc: Int = { 5 | val ret = index 6 | index += 1 7 | ret 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /joern-cli/frontends/pysrc2cpg/src/main/scala/io/joern/pysrc2cpg/Constants.scala: -------------------------------------------------------------------------------- 1 | package io.joern.pysrc2cpg 2 | 3 | object Constants { 4 | val ANY = "ANY" 5 | val GLOBAL_NAMESPACE = "" 6 | val builtinStrType = "builtin.str" 7 | val builtinBytesType = "builtin.bytes" 8 | val builtinIntType = "builtin.int" 9 | val builtinFloatType = "builtin.float" 10 | val builtinComplexType = "builtin.complex" 11 | } 12 | -------------------------------------------------------------------------------- /joern-cli/frontends/pysrc2cpg/src/main/scala/io/joern/pysrc2cpg/LineAndColumn.scala: -------------------------------------------------------------------------------- 1 | package io.joern.pysrc2cpg 2 | 3 | case class LineAndColumn(line: Int, column: Int, endLine: Int, endColumn: Int) 4 | -------------------------------------------------------------------------------- /joern-cli/frontends/pysrc2cpg/src/main/scala/io/joern/pysrc2cpg/NodeToCode.scala: -------------------------------------------------------------------------------- 1 | package io.joern.pysrc2cpg 2 | 3 | import io.joern.pythonparser.ast 4 | 5 | class NodeToCode(content: String) { 6 | def getCode(node: ast.iattributes): String = { 7 | content.substring(node.input_offset, node.end_input_offset) 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /joern-cli/frontends/pysrc2cpg/src/main/scala/io/joern/pysrc2cpg/memop/MemoryOperation.scala: -------------------------------------------------------------------------------- 1 | package io.joern.pysrc2cpg.memop 2 | 3 | sealed trait MemoryOperation { 4 | override def toString: String = getClass.getSimpleName 5 | } 6 | object Store extends MemoryOperation 7 | object Load extends MemoryOperation 8 | object Del extends MemoryOperation 9 | -------------------------------------------------------------------------------- /joern-cli/frontends/pysrc2cpg/src/main/scala/io/joern/pythonparser/ast/package.scala: -------------------------------------------------------------------------------- 1 | package io.joern.pythonparser 2 | 3 | import scala.collection.mutable 4 | 5 | package object ast { 6 | type CollType[T] = mutable.Seq[T] 7 | } 8 | -------------------------------------------------------------------------------- /joern-cli/frontends/pysrc2cpg/src/test/resources/log4j2-test.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /joern-cli/frontends/rubysrc2cpg/.gitignore: -------------------------------------------------------------------------------- 1 | # Created by IntelliJ's ANTLR plugin 2 | gen/ 3 | *.tokens 4 | -------------------------------------------------------------------------------- /joern-cli/frontends/rubysrc2cpg/ruby2cpg.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/rubysrc2cpg/ruby2cpg.sh -------------------------------------------------------------------------------- /joern-cli/frontends/rubysrc2cpg/rubysrc2cpg.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | 3 | SCRIPT_ABS_PATH=$(readlink -f "$0") 4 | SCRIPT_ABS_DIR=$(dirname $SCRIPT_ABS_PATH) 5 | 6 | $SCRIPT_ABS_DIR/target/universal/stage/bin/rubysrc2cpg -J-XX:+UseG1GC -J-XX:CompressedClassSpaceSize=128m -J-XX:+UseStringDeduplication "$@" 7 | -------------------------------------------------------------------------------- /joern-cli/frontends/swiftsrc2cpg/src/main/resources/application.conf: -------------------------------------------------------------------------------- 1 | swiftsrc2cpg { 2 | astgen_version: "0.1.8" 3 | } 4 | -------------------------------------------------------------------------------- /joern-cli/frontends/swiftsrc2cpg/src/main/scala/io/joern/swiftsrc2cpg/datastructures/ResolvedReference.scala: -------------------------------------------------------------------------------- 1 | package io.joern.swiftsrc2cpg.datastructures 2 | 3 | import io.shiftleft.codepropertygraph.generated.nodes.NewNode 4 | 5 | case class ResolvedReference(variableNodeId: NewNode, origin: PendingReference) 6 | -------------------------------------------------------------------------------- /joern-cli/frontends/swiftsrc2cpg/src/main/scala/io/joern/swiftsrc2cpg/datastructures/ScopeType.scala: -------------------------------------------------------------------------------- 1 | package io.joern.swiftsrc2cpg.datastructures 2 | 3 | sealed trait ScopeType 4 | object MethodScope extends ScopeType 5 | object BlockScope extends ScopeType 6 | -------------------------------------------------------------------------------- /joern-cli/frontends/swiftsrc2cpg/src/main/scala/io/joern/swiftsrc2cpg/passes/GlobalBuiltins.scala: -------------------------------------------------------------------------------- 1 | package io.joern.swiftsrc2cpg.passes 2 | 3 | object GlobalBuiltins { 4 | 5 | val builtins: Set[String] = Set() // TODO: fill this 6 | 7 | } 8 | -------------------------------------------------------------------------------- /joern-cli/frontends/swiftsrc2cpg/src/test/resources/log4j2-test.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /joern-cli/frontends/swiftsrc2cpg/src/test/scala/io/joern/swiftsrc2cpg/testfixtures/SwiftCfgTestCpg.scala: -------------------------------------------------------------------------------- 1 | package io.joern.swiftsrc2cpg.testfixtures 2 | 3 | import io.joern.x2cpg.testfixtures.CfgTestCpg 4 | 5 | class SwiftCfgTestCpg extends CfgTestCpg with SwiftSrc2CpgFrontend { 6 | override val fileSuffix: String = ".swift" 7 | } 8 | -------------------------------------------------------------------------------- /joern-cli/frontends/swiftsrc2cpg/swiftsrc2cpg.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | 3 | SCRIPT_ABS_PATH=$(readlink -f "$0") 4 | SCRIPT_ABS_DIR=$(dirname $SCRIPT_ABS_PATH) 5 | 6 | $SCRIPT_ABS_DIR/target/universal/stage/bin/swiftsrc2cpg -J-XX:+UseG1GC -J-XX:CompressedClassSpaceSize=128m -J-XX:+UseStringDeduplication $@ 7 | -------------------------------------------------------------------------------- /joern-cli/frontends/x2cpg/src/main/resources/symlink-to-main.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/x2cpg/src/main/resources/symlink-to-main.c -------------------------------------------------------------------------------- /joern-cli/frontends/x2cpg/src/main/resources/symlink-to-testcode: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/frontends/x2cpg/src/main/resources/symlink-to-testcode -------------------------------------------------------------------------------- /joern-cli/frontends/x2cpg/src/main/resources/testcode/main.c: -------------------------------------------------------------------------------- 1 | #include "main.h" 2 | 3 | int main() { 4 | printf("Hello World\n"); 5 | return 0; 6 | } 7 | 8 | -------------------------------------------------------------------------------- /joern-cli/frontends/x2cpg/src/main/resources/testcode/main.h: -------------------------------------------------------------------------------- 1 | int main(); 2 | 3 | void bar() { return; }; 4 | -------------------------------------------------------------------------------- /joern-cli/frontends/x2cpg/src/main/resources/testcode/other.h: -------------------------------------------------------------------------------- 1 | int foo(); 2 | -------------------------------------------------------------------------------- /joern-cli/frontends/x2cpg/src/main/scala/io/joern/x2cpg/datastructures/Global.scala: -------------------------------------------------------------------------------- 1 | package io.joern.x2cpg.datastructures 2 | 3 | import java.util.concurrent.ConcurrentHashMap 4 | 5 | class Global { 6 | 7 | val usedTypes: ConcurrentHashMap[String, Boolean] = new ConcurrentHashMap() 8 | 9 | } 10 | -------------------------------------------------------------------------------- /joern-cli/frontends/x2cpg/src/main/scala/io/joern/x2cpg/passes/controlflow/cfgdominator/CfgAdapter.scala: -------------------------------------------------------------------------------- 1 | package io.joern.x2cpg.passes.controlflow.cfgdominator 2 | 3 | trait CfgAdapter[Node] { 4 | def successors(node: Node): IterableOnce[Node] 5 | def predecessors(node: Node): IterableOnce[Node] 6 | } 7 | -------------------------------------------------------------------------------- /joern-cli/frontends/x2cpg/src/main/scala/io/joern/x2cpg/utils/StringUtils.scala: -------------------------------------------------------------------------------- 1 | package io.joern.x2cpg.utils 2 | 3 | implicit class StringUtils(str: String) { 4 | def isAllUpperCase: Boolean = { 5 | str.forall(c => c.isUpper || !c.isLetter) 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /joern-cli/frontends/x2cpg/src/test/resources/log4j2-test.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /joern-cli/frontends/x2cpg/src/test/resources/testfile: -------------------------------------------------------------------------------- 1 | this is a test file -------------------------------------------------------------------------------- /joern-cli/frontends/x2cpg/src/test/scala/io/joern/x2cpg/testfixtures/DefaultTestCpg.scala: -------------------------------------------------------------------------------- 1 | package io.joern.x2cpg.testfixtures 2 | 3 | import io.joern.x2cpg.X2Cpg 4 | 5 | abstract class DefaultTestCpg extends TestCpg { 6 | override protected def applyPasses(): Unit = { 7 | X2Cpg.applyDefaultOverlays(this) 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /joern-cli/frontends/x2cpg/src/test/scala/io/joern/x2cpg/testfixtures/EmptyGraphFixture.scala: -------------------------------------------------------------------------------- 1 | package io.joern.x2cpg.testfixtures 2 | 3 | import io.shiftleft.OverflowDbTestInstance 4 | import overflowdb.Graph 5 | 6 | object EmptyGraphFixture { 7 | def apply[T](fun: Graph => T): T = { 8 | val graph = OverflowDbTestInstance.create 9 | try fun(graph) 10 | finally { graph.close() } 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /joern-cli/frontends/x2cpg/src/test/scala/io/joern/x2cpg/utils/IgnoreInWindows.scala: -------------------------------------------------------------------------------- 1 | package io.joern.x2cpg.utils 2 | 3 | import org.scalatest.{Ignore, Tag} 4 | 5 | object IgnoreInWindows 6 | extends Tag(if (System.getProperty("os.name").toLowerCase().contains("windows")) { 7 | classOf[Ignore].getName 8 | } else { 9 | "" 10 | }) 11 | -------------------------------------------------------------------------------- /joern-cli/src/main/resources/scripts/binary/gadgets.sc: -------------------------------------------------------------------------------- 1 | def instrBefore(x: CfgNode, n: Int) = 2 | x.cfgPrev(n).l.reverse.map(y => y.address.get + ": " + y.code) 3 | 4 | cpg.ret.map(x => instrBefore(x, 5).mkString("|\t") + "\n").l |> "/tmp/gadgets.txt" 5 | -------------------------------------------------------------------------------- /joern-cli/src/main/resources/scripts/general/help.sc: -------------------------------------------------------------------------------- 1 | @main def main(inputPath: String) = { 2 | importCode(inputPath) 3 | 4 | if (help.cpg.toString.isEmpty) 5 | throw new AssertionError("no help text available!") with scala.util.control.NoStackTrace 6 | } 7 | -------------------------------------------------------------------------------- /joern-cli/src/main/resources/scripts/general/run.sc: -------------------------------------------------------------------------------- 1 | @main def main(inputPath: String) = { 2 | importCode(inputPath) 3 | 4 | if (!run.toString.contains("base")) 5 | throw new AssertionError(s"""base layer not applied...? 6 | |output of `run`: 7 | |$run""".mkString) with scala.util.control.NoStackTrace 8 | } 9 | -------------------------------------------------------------------------------- /joern-cli/src/main/resources/scripts/general/scripts.json: -------------------------------------------------------------------------------- 1 | { 2 | "description": "A collection of general-purpose scripts.", 3 | "scripts": [ 4 | { 5 | "name": "list-funcs.sc", 6 | "description": "Lists all functions." 7 | } 8 | ] 9 | } -------------------------------------------------------------------------------- /joern-cli/src/main/resources/scripts/trigger-error.sc: -------------------------------------------------------------------------------- 1 | assert(true == false, "trigger an error for testing purposes") 2 | -------------------------------------------------------------------------------- /joern-cli/src/main/scala/io/joern/joerncli/console/Joern.scala: -------------------------------------------------------------------------------- 1 | package io.joern.joerncli.console 2 | 3 | object Joern extends JoernConsole 4 | -------------------------------------------------------------------------------- /joern-cli/src/test/resources/testcode/SlimAndroid/README.md: -------------------------------------------------------------------------------- 1 | ## SlimAndroid 2 | 3 | - attempt to make the smallest Android app Gradle project which runs 4 | -------------------------------------------------------------------------------- /joern-cli/src/test/resources/testcode/SlimAndroid/app/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Keeping this file to have a close enough representation 2 | # Of the release config of an Android app 3 | -------------------------------------------------------------------------------- /joern-cli/src/test/resources/testcode/SlimAndroid/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/src/test/resources/testcode/SlimAndroid/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /joern-cli/src/test/resources/testcode/SlimAndroid/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Thu May 12 11:02:39 CEST 2022 2 | distributionBase=GRADLE_USER_HOME 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-bin.zip 4 | distributionPath=wrapper/dists 5 | zipStorePath=wrapper/dists 6 | zipStoreBase=GRADLE_USER_HOME 7 | -------------------------------------------------------------------------------- /joern-cli/src/test/resources/testcode/SlimAndroid/settings.gradle: -------------------------------------------------------------------------------- 1 | dependencyResolutionManagement { 2 | repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) 3 | repositories { 4 | google() 5 | mavenCentral() 6 | jcenter() // Warning: this repository is going to shut down soon 7 | } 8 | } 9 | rootProject.name = "SlimAndroid" 10 | include ':app' 11 | -------------------------------------------------------------------------------- /joern-cli/src/test/resources/testcode/free/free.c: -------------------------------------------------------------------------------- 1 | #include 2 | struct node { 3 | int value; 4 | struct node *next; 5 | }; 6 | 7 | void free_list(struct node *head) { 8 | struct node *q; 9 | for (struct node *p = head; p != NULL; p = q) { 10 | q = p->next; 11 | free(p); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /joern-cli/src/test/resources/testcode/leak/leak.c: -------------------------------------------------------------------------------- 1 | int main() { 2 | int* leak = malloc(sizeof(int)); 3 | int* number = malloc(sizeof(int)); 4 | 5 | free(number); 6 | 7 | return 0; 8 | } 9 | -------------------------------------------------------------------------------- /joern-cli/src/test/resources/testcode/malloc-overflow/malloc-overflow.c: -------------------------------------------------------------------------------- 1 | int main() { 2 | int* nested; 3 | if ((nested = malloc(sizeof(int) * 42)) == NULL) return NULL; 4 | 5 | int* multiplication = malloc(sizeof(int) * 3); 6 | 7 | int* addition = malloc(sizeof(int) + 55); 8 | 9 | int* valid = malloc(sizeof(int)); 10 | 11 | return 0; 12 | } 13 | -------------------------------------------------------------------------------- /joern-cli/src/test/resources/testcode/syscalls/syscalls.c: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | int main() { 4 | int time = gettimeofday(); 5 | 6 | int x; 7 | int y = 5; 8 | get_user(x, &y); 9 | 10 | exit(0); 11 | } 12 | -------------------------------------------------------------------------------- /joern-cli/src/universal/.installation_root: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-cli/src/universal/.installation_root -------------------------------------------------------------------------------- /joern-cli/src/universal/c2cpg.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | set "SCRIPT_ABS_DIR=%~dp0" 4 | set "SCRIPT=%SCRIPT_ABS_DIR%frontends\c2cpg\bin\c2cpg.bat" 5 | 6 | "%SCRIPT%" "-J-XX:+UseG1GC" "-J-XX:CompressedClassSpaceSize=128m" "-Dlog4j.configurationFile=%SCRIPT_ABS_DIR%conf\log4j2.xml" %* 7 | -------------------------------------------------------------------------------- /joern-cli/src/universal/ghidra2cpg.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | set "SCRIPT_ABS_DIR=%~dp0" 4 | set "SCRIPT=%SCRIPT_ABS_DIR%frontends\ghidra2cpg\bin\ghidra2cpg.bat" 5 | 6 | "%SCRIPT%" "-J-XX:+UseG1GC" "-J-XX:CompressedClassSpaceSize=128m" "-Dlog4j.configurationFile=%SCRIPT_ABS_DIR%conf\log4j2.xml" %* 7 | -------------------------------------------------------------------------------- /joern-cli/src/universal/gosrc2cpg.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | set "SCRIPT_ABS_DIR=%~dp0" 4 | set "SCRIPT=%SCRIPT_ABS_DIR%frontends\gosrc2cpg\bin\gosrc2cpg.bat" 5 | 6 | "%SCRIPT%" "-J-XX:+UseG1GC" "-J-XX:CompressedClassSpaceSize=128m" "-Dlog4j.configurationFile=%SCRIPT_ABS_DIR%conf\log4j2.xml" %* 7 | -------------------------------------------------------------------------------- /joern-cli/src/universal/ida2cpg.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | set "SCRIPT_ABS_DIR=%~dp0" 4 | set "SCRIPT=%SCRIPT_ABS_DIR%frontends\ida2cpg\bin\ida2cpg.bat" 5 | 6 | "%SCRIPT%" "-J-XX:+UseG1GC" "-J-XX:CompressedClassSpaceSize=128m" "-Dlog4j.configurationFile=%SCRIPT_ABS_DIR%conf\log4j2.xml" %* 7 | -------------------------------------------------------------------------------- /joern-cli/src/universal/javasrc2cpg.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | set "SCRIPT_ABS_DIR=%~dp0" 4 | set "SCRIPT=%SCRIPT_ABS_DIR%frontends\javasrc2cpg\bin\javasrc2cpg.bat" 5 | 6 | "%SCRIPT%" "-J-XX:+UseG1GC" "-J-XX:CompressedClassSpaceSize=128m" "-Dlog4j.configurationFile=%SCRIPT_ABS_DIR%conf\log4j2.xml" %* 7 | -------------------------------------------------------------------------------- /joern-cli/src/universal/jimple2cpg.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | set "SCRIPT_ABS_DIR=%~dp0" 4 | set "SCRIPT=%SCRIPT_ABS_DIR%frontends\jimple2cpg\bin\jimple2cpg.bat" 5 | 6 | "%SCRIPT%" "-J-XX:+UseG1GC" "-J-XX:CompressedClassSpaceSize=128m" "-Dlog4j.configurationFile=%SCRIPT_ABS_DIR%conf\log4j2.xml" %* 7 | -------------------------------------------------------------------------------- /joern-cli/src/universal/joern-export.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | set "SCRIPT_ABS_DIR=%~dp0" 4 | set "SCRIPT=%SCRIPT_ABS_DIR%bin\joern-export.bat" 5 | 6 | "%SCRIPT%" "-J-XX:+UseG1GC" "-J-XX:CompressedClassSpaceSize=128m" "-Dlog4j.configurationFile=%SCRIPT_ABS_DIR%conf\log4j2.xml" %* 7 | -------------------------------------------------------------------------------- /joern-cli/src/universal/joern-flow.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | set "SCRIPT_ABS_DIR=%~dp0" 4 | set "SCRIPT=%SCRIPT_ABS_DIR%bin\joern-flow.bat" 5 | 6 | "%SCRIPT%" "-J-XX:+UseG1GC" "-J-XX:CompressedClassSpaceSize=128m" "-Dlog4j.configurationFile=%SCRIPT_ABS_DIR%conf\log4j2.xml" %* 7 | -------------------------------------------------------------------------------- /joern-cli/src/universal/joern-parse.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | set "SCRIPT_ABS_DIR=%~dp0" 4 | set "SCRIPT=%SCRIPT_ABS_DIR%bin\joern-parse.bat" 5 | 6 | "%SCRIPT%" "-J-XX:+UseG1GC" "-J-XX:CompressedClassSpaceSize=128m" "-Dlog4j.configurationFile=%SCRIPT_ABS_DIR%conf\log4j2.xml" %* 7 | -------------------------------------------------------------------------------- /joern-cli/src/universal/joern-scan.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | set "SCRIPT_ABS_DIR=%~dp0" 4 | set "SCRIPT=%SCRIPT_ABS_DIR%bin\joern-scan.bat" 5 | 6 | "%SCRIPT%" "-J-XX:+UseG1GC" "-J-XX:CompressedClassSpaceSize=128m" "-Dlog4j.configurationFile=%SCRIPT_ABS_DIR%conf\log4j2.xml" %* 7 | -------------------------------------------------------------------------------- /joern-cli/src/universal/joern-slice.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | set "SCRIPT_ABS_DIR=%~dp0" 4 | set "SCRIPT=%SCRIPT_ABS_DIR%bin\joern-slice.bat" 5 | 6 | "%SCRIPT%" "-J-XX:+UseG1GC" "-J-XX:CompressedClassSpaceSize=128m" "-Dlog4j.configurationFile=%SCRIPT_ABS_DIR%conf\log4j2.xml" %* 7 | -------------------------------------------------------------------------------- /joern-cli/src/universal/joern-vectors.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | set "SCRIPT_ABS_DIR=%~dp0" 4 | set "SCRIPT=%SCRIPT_ABS_DIR%bin\joern-vectors.bat" 5 | 6 | "%SCRIPT%" "-J-XX:+UseG1GC" "-J-XX:CompressedClassSpaceSize=128m" "-Dlog4j.configurationFile=%SCRIPT_ABS_DIR%conf\log4j2.xml" %* 7 | -------------------------------------------------------------------------------- /joern-cli/src/universal/joern.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | set "SCRIPT_ABS_DIR=%~dp0" 4 | set "SCRIPT=%SCRIPT_ABS_DIR%bin\repl-bridge.bat" 5 | 6 | "%SCRIPT%" "-J-XX:+UseG1GC" "-J-XX:CompressedClassSpaceSize=128m" "-Dlog4j.configurationFile=%SCRIPT_ABS_DIR%conf\log4j2.xml" %* 7 | -------------------------------------------------------------------------------- /joern-cli/src/universal/jssrc2cpg.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | set "SCRIPT_ABS_DIR=%~dp0" 4 | set "SCRIPT=%SCRIPT_ABS_DIR%frontends\jssrc2cpg\bin\jssrc2cpg.bat" 5 | 6 | "%SCRIPT%" "-J-XX:+UseG1GC" "-J-XX:CompressedClassSpaceSize=128m" "-Dlog4j.configurationFile=%SCRIPT_ABS_DIR%conf\log4j2.xml" %* 7 | -------------------------------------------------------------------------------- /joern-cli/src/universal/kotlin2cpg: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | 3 | # Script starts here 4 | 5 | readonly SCRIPT_DIR=$(dirname "$(realpath "$0")") 6 | readonly BIN="${SCRIPT_DIR}/frontends/kotlin2cpg/bin/kotlin2cpg" 7 | 8 | "${BIN}" -Dlog4j2.formatMsgNoLookups=true \ 9 | "$@" 10 | -------------------------------------------------------------------------------- /joern-cli/src/universal/kotlin2cpg.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | set "SCRIPT_ABS_DIR=%~dp0" 4 | set "SCRIPT=%SCRIPT_ABS_DIR%frontends\kotlin2cpg\bin\kotlin2cpg.bat" 5 | 6 | "%SCRIPT%" "-J-XX:+UseG1GC" "-J-XX:CompressedClassSpaceSize=128m" "-Dlog4j.configurationFile=%SCRIPT_ABS_DIR%conf\log4j2.xml" %* 7 | -------------------------------------------------------------------------------- /joern-cli/src/universal/php2cpg.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | set "SCRIPT_ABS_DIR=%~dp0" 4 | set "SCRIPT=%SCRIPT_ABS_DIR%frontends\php2cpg\bin\php2cpg.bat" 5 | 6 | "%SCRIPT%" "-J-XX:+UseG1GC" "-J-XX:CompressedClassSpaceSize=128m" "-Dlog4j.configurationFile=%SCRIPT_ABS_DIR%conf\log4j2.xml" %* 7 | -------------------------------------------------------------------------------- /joern-cli/src/universal/pysrc2cpg.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | set "SCRIPT_ABS_DIR=%~dp0" 4 | set "SCRIPT=%SCRIPT_ABS_DIR%frontends\pysrc2cpg\bin\pysrc2cpg.bat" 5 | 6 | "%SCRIPT%" "-J-XX:+UseG1GC" "-J-XX:CompressedClassSpaceSize=128m" "-Dlog4j.configurationFile=%SCRIPT_ABS_DIR%conf\log4j2.xml" %* 7 | -------------------------------------------------------------------------------- /joern-cli/src/universal/rubysrc2cpg.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | set "SCRIPT_ABS_DIR=%~dp0" 4 | set "SCRIPT=%SCRIPT_ABS_DIR%frontends\rubysrc2cpg\bin\rubysrc2cpg.bat" 5 | 6 | "%SCRIPT%" "-J-XX:+UseG1GC" "-J-XX:CompressedClassSpaceSize=128m" "-Dlog4j.configurationFile=%SCRIPT_ABS_DIR%conf\log4j2.xml" %* 7 | -------------------------------------------------------------------------------- /joern-cli/src/universal/schema-extender.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | 3 | cd schema-extender 4 | export CPG_VERSION=$(cat cpg-version) 5 | ./sbt clean replaceDomainClassesInJoern 6 | cd .. 7 | -------------------------------------------------------------------------------- /joern-cli/src/universal/schema-extender/project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.9.0 2 | -------------------------------------------------------------------------------- /joern-cli/src/universal/swiftsrc2cpg.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | set "SCRIPT_ABS_DIR=%~dp0" 4 | set "SCRIPT=%SCRIPT_ABS_DIR%frontends\swiftsrc2cpg\bin\swiftsrc2cpg.bat" 5 | 6 | "%SCRIPT%" "-J-XX:+UseG1GC" "-J-XX:CompressedClassSpaceSize=128m" "-Dlog4j.configurationFile=%SCRIPT_ABS_DIR%conf\log4j2.xml" %* 7 | -------------------------------------------------------------------------------- /joern-export: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-export -------------------------------------------------------------------------------- /joern-export.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | .\joern-cli\target\universal\stage\bin\joern-export.bat %* 4 | -------------------------------------------------------------------------------- /joern-flow: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-flow -------------------------------------------------------------------------------- /joern-flow.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | .\joern-cli\target\universal\stage\bin\joern-flow.bat %* 4 | -------------------------------------------------------------------------------- /joern-parse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-parse -------------------------------------------------------------------------------- /joern-parse.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | .\joern-cli\target\universal\stage\bin\joern-parse.bat %* 4 | -------------------------------------------------------------------------------- /joern-scan: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-scan -------------------------------------------------------------------------------- /joern-scan.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | .\joern-cli\target\universal\stage\bin\joern-scan.bat %* 4 | -------------------------------------------------------------------------------- /joern-slice: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-slice -------------------------------------------------------------------------------- /joern-vectors: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/joern-vectors -------------------------------------------------------------------------------- /joern.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | .\joern-cli\target\universal\stage\bin\repl-bridge.bat %* 4 | -------------------------------------------------------------------------------- /lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/lib -------------------------------------------------------------------------------- /macros/build.sbt: -------------------------------------------------------------------------------- 1 | name := "macros" 2 | 3 | dependsOn(Projects.semanticcpg % Test) 4 | 5 | libraryDependencies ++= Seq( 6 | "io.shiftleft" %% "codepropertygraph" % Versions.cpg, 7 | "org.scalatest" %% "scalatest" % Versions.scalatest % Test 8 | ) 9 | 10 | enablePlugins(JavaAppPackaging) 11 | -------------------------------------------------------------------------------- /macros/src/main/java/io/joern/console/q.java: -------------------------------------------------------------------------------- 1 | package io.joern.console; 2 | 3 | import java.lang.annotation.Retention; 4 | import java.lang.annotation.RetentionPolicy; 5 | 6 | @Retention(RetentionPolicy.RUNTIME) 7 | public @interface q { 8 | } 9 | -------------------------------------------------------------------------------- /project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.9.7 2 | -------------------------------------------------------------------------------- /project/meta-build.sbt: -------------------------------------------------------------------------------- 1 | libraryDependencies ++= Seq( 2 | "com.typesafe" % "config" % "1.4.2", 3 | "com.michaelpollmeier" % "versionsort" % "1.0.11", 4 | "net.lingala.zip4j" % "zip4j" % "2.11.5", 5 | "com.github.pathikrit" %% "better-files" % "3.9.2", 6 | "net.java.dev.javacc" % "javacc" % "7.0.12", 7 | "com.lihaoyi" %% "os-lib" % "0.9.1" 8 | ) 9 | -------------------------------------------------------------------------------- /project/plugins.sbt: -------------------------------------------------------------------------------- 1 | addSbtPlugin("com.simplytyped" % "sbt-antlr4" % "0.8.3") 2 | addSbtPlugin("com.github.sbt" % "sbt-native-packager" % "1.9.16") 3 | addSbtPlugin("org.scalameta" % "sbt-scalafmt" % "2.4.6") 4 | addSbtPlugin("io.shiftleft" % "sbt-ci-release-early" % "2.0.19") 5 | addSbtPlugin("com.github.sbt" % "sbt-dynver" % "5.0.1") 6 | -------------------------------------------------------------------------------- /querydb/src/main/scala/io/joern/scanners/Crew.scala: -------------------------------------------------------------------------------- 1 | package io.joern.scanners 2 | 3 | object Crew { 4 | 5 | val suchakra = "@tuxology" 6 | val niko = "@0x4D5A" 7 | val fabs = "@fabsx00" 8 | val claudiu = "@ursachec" 9 | val malte = "@maltek" 10 | val dave = "@DavidBakerEffendi" 11 | 12 | } 13 | -------------------------------------------------------------------------------- /querydb/src/test/resources/testbinaries/buf1.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | // gcc -fno-stack-protector -z execstack -no-pie -o buf1 buf1.c 5 | int main(int argc, char *argv[]) { 6 | if (argc == 1) { 7 | printf("Program executed with no arguments.\n"); 8 | return 0; 9 | } 10 | char c[6]; 11 | strcpy(c, argv[1]); 12 | printf("First argument is: %s\n", c); 13 | return 0; 14 | } 15 | -------------------------------------------------------------------------------- /querydb/src/test/resources/testbinaries/buf1.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/querydb/src/test/resources/testbinaries/buf1.exe -------------------------------------------------------------------------------- /querydb/src/test/resources/testbinaries/buf2.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/querydb/src/test/resources/testbinaries/buf2.exe -------------------------------------------------------------------------------- /querydb/src/test/resources/testbinaries/buf2_neg.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/querydb/src/test/resources/testbinaries/buf2_neg.exe -------------------------------------------------------------------------------- /querydb/src/test/resources/testbinaries/dangerous_functions.c: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | void vulnerable_strcpy(char *dest, char *src, size_t size) { 4 | strcpy(dest, src); 5 | strncpy(dest, src, size); 6 | } 7 | -------------------------------------------------------------------------------- /querydb/src/test/resources/testbinaries/dangerous_functions.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/querydb/src/test/resources/testbinaries/dangerous_functions.o -------------------------------------------------------------------------------- /querydb/src/test/scala/io/joern/scanners/c/FileOpRaceTests.scala: -------------------------------------------------------------------------------- 1 | package io.joern.scanners.c 2 | 3 | import io.joern.suites.CQueryTestSuite 4 | 5 | class FileOpRaceTests extends CQueryTestSuite(FileOpRace) { 6 | 7 | "should flag function `insecure_race` only" in { 8 | val query = queryBundle.fileOperationRace() 9 | val results = findMatchingCalls(query) 10 | results shouldBe Set("insecure_race") 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /querydb/src/test/scala/io/joern/scanners/c/SignedLeftShiftTests.scala: -------------------------------------------------------------------------------- 1 | package io.joern.scanners.c 2 | 3 | import io.joern.suites.CQueryTestSuite 4 | 5 | class SignedLeftShiftTests extends CQueryTestSuite(SignedLeftShift) { 6 | 7 | "find signed left shift" in { 8 | val query = queryBundle.signedLeftShift() 9 | val results = findMatchingCalls(query) 10 | results shouldBe Set("bad1", "bad2", "bad3") 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /scripts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/scripts -------------------------------------------------------------------------------- /semanticcpg/src/main/scala/io/shiftleft/semanticcpg/NodeExtension.scala: -------------------------------------------------------------------------------- 1 | package io.shiftleft.semanticcpg 2 | 3 | trait NodeExtension extends Any {} 4 | -------------------------------------------------------------------------------- /semanticcpg/src/main/scala/io/shiftleft/semanticcpg/dotgenerator/DotCallGraphGenerator.scala: -------------------------------------------------------------------------------- 1 | package io.shiftleft.semanticcpg.dotgenerator 2 | 3 | import io.shiftleft.codepropertygraph.Cpg 4 | 5 | object DotCallGraphGenerator { 6 | 7 | def dotCallGraph(cpg: Cpg): Iterator[String] = { 8 | val callGraph = new CallGraphGenerator().generate(cpg) 9 | Iterator(DotSerializer.dotGraph(None, callGraph)) 10 | } 11 | 12 | } 13 | -------------------------------------------------------------------------------- /semanticcpg/src/main/scala/io/shiftleft/semanticcpg/dotgenerator/DotTypeHierarchyGenerator.scala: -------------------------------------------------------------------------------- 1 | package io.shiftleft.semanticcpg.dotgenerator 2 | 3 | import io.shiftleft.codepropertygraph.Cpg 4 | 5 | object DotTypeHierarchyGenerator { 6 | 7 | def dotTypeHierarchy(cpg: Cpg): Iterator[String] = { 8 | val typeHierarchy = new TypeHierarchyGenerator().generate(cpg) 9 | Iterator(DotSerializer.dotGraph(None, typeHierarchy)) 10 | } 11 | 12 | } 13 | -------------------------------------------------------------------------------- /semanticcpg/src/main/scala/io/shiftleft/semanticcpg/language/HasLocation.scala: -------------------------------------------------------------------------------- 1 | package io.shiftleft.semanticcpg.language 2 | 3 | import io.shiftleft.codepropertygraph.generated.nodes.NewLocation 4 | 5 | trait HasLocation extends Any { 6 | def location: NewLocation 7 | } 8 | -------------------------------------------------------------------------------- /semanticcpg/src/main/scala/io/shiftleft/semanticcpg/language/android/Constants.scala: -------------------------------------------------------------------------------- 1 | package io.shiftleft.semanticcpg.language.android 2 | 3 | object Constants { 4 | val androidUri = "http://schemas.android.com/apk/res/android" 5 | val androidManifestXml = "AndroidManifest.xml" 6 | } 7 | -------------------------------------------------------------------------------- /semanticcpg/src/main/scala/io/shiftleft/semanticcpg/language/android/MethodTraversal.scala: -------------------------------------------------------------------------------- 1 | package io.shiftleft.semanticcpg.language.android 2 | 3 | import io.shiftleft.codepropertygraph.generated.nodes 4 | import io.shiftleft.semanticcpg.language.* 5 | 6 | class MethodTraversal(val traversal: Iterator[nodes.Method]) extends AnyVal { 7 | def exposedToJS = 8 | traversal.where(_.annotation.fullNameExact("android.webkit.JavascriptInterface")) 9 | } 10 | -------------------------------------------------------------------------------- /semanticcpg/src/main/scala/io/shiftleft/semanticcpg/language/importresolver/README.md: -------------------------------------------------------------------------------- 1 | # Import Resolution 2 | 3 | Import nodes and import resolution is a fairly developing and new feature in Joern. This package interacts with TAG 4 | nodes as the schema around this is experimental. Once this is developed, more official schema elements in the graph 5 | schema would be implemented. 6 | -------------------------------------------------------------------------------- /semanticcpg/src/main/scala/io/shiftleft/semanticcpg/utils/Statements.scala: -------------------------------------------------------------------------------- 1 | package io.shiftleft.semanticcpg.utils 2 | 3 | import io.shiftleft.codepropertygraph.Cpg 4 | import io.shiftleft.semanticcpg.language._ 5 | 6 | object Statements { 7 | def countAll(cpg: Cpg): Long = 8 | cpg.method.topLevelExpressions.size 9 | } 10 | -------------------------------------------------------------------------------- /test-additionalfuncs.sc: -------------------------------------------------------------------------------- 1 | // ./joern --import test-additionalfuncs.sc 2 | // joern> exportMethods("workspace/src/cpg.bin", "a.txt") 3 | 4 | def exportMethods(cpgFile: String, outFile: String) = { 5 | loadCpg(cpgFile) 6 | cpg.method.name.l |> outFile 7 | } 8 | -------------------------------------------------------------------------------- /test-cpg-callotherscript.sc: -------------------------------------------------------------------------------- 1 | // to test, run e.g. 2 | // ./joern --script test-cpg-callotherscript.sc --import test-additionalfuncs.sc --param cpgFile=workspace/src/cpg.bin --param outFile=a.txt 3 | 4 | @main def exec(cpgFile: String, outFile: String) = { 5 | exportMethods(cpgFile, outFile) 6 | } 7 | -------------------------------------------------------------------------------- /test-cpg.sc: -------------------------------------------------------------------------------- 1 | @main def exec(cpgFile: String, outFile: String) = { 2 | loadCpg(cpgFile) 3 | cpg.method.name.l |> outFile 4 | } 5 | -------------------------------------------------------------------------------- /test-dependencies.sc: -------------------------------------------------------------------------------- 1 | //> using com.michaelpollmeier:versionsort:1.0.7 2 | 3 | val compareResult = versionsort.VersionHelper.compare("1.0", "0.9") 4 | assert(compareResult == 1, s"result of comparison should be `1`, but was `$compareResult`") 5 | -------------------------------------------------------------------------------- /test-main-withargs.sc: -------------------------------------------------------------------------------- 1 | @main def main(name: String) = { 2 | println(s"Hello, $name!") 3 | } 4 | -------------------------------------------------------------------------------- /test-main.sc: -------------------------------------------------------------------------------- 1 | @main def main() = { 2 | println("Hello, world!") 3 | } 4 | -------------------------------------------------------------------------------- /test-simple.sc: -------------------------------------------------------------------------------- 1 | println("Hello!") 2 | -------------------------------------------------------------------------------- /tests/code/c/test.c: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | int main() { 4 | print_number(42); 5 | return 0; 6 | } 7 | 8 | void print_number(int x) { 9 | printf(x); 10 | return; 11 | } 12 | -------------------------------------------------------------------------------- /tests/code/ghidra: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/tests/code/ghidra -------------------------------------------------------------------------------- /tests/code/java/MethodTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hac425xxx/joern-ida/259e9465e50b149f9a7e7fa823c5bf480e021232/tests/code/java/MethodTest.class -------------------------------------------------------------------------------- /tests/code/php/test.php: -------------------------------------------------------------------------------- 1 |