icmodules / codeql-uboot

https://lab.github.com/githubtraining/codeql-u-boot-challenge-(cc++)
MIT License
0 stars 0 forks source link

Step 8 - Changing the selected output #8

Closed github-learning-lab[bot] closed 4 years ago

github-learning-lab[bot] commented 4 years ago

Step 8: Changing the selected output

In the previous step, you found invocations of the macros we are interested in. Modify your query to find the top-level expressions these macro invocations expand to.

Note: An expression is a source code element that can have a value at runtime. Invoking a macro can bring various source code elements into scope, including expressions.

github-learning-lab[bot] commented 4 years ago

:keyboard: Activity: Find the expressions that correspond to macro invocations

As before, if you don't know how a piece of source code is represented in the library, you can use the auto-completion and contextual help to discover the classes and predicates you need.

  1. Edit the file 8_macro_expressions.ql with the previous query
  2. Use the getExpr() predicate in the select section, to return the wanted expressions.
  3. Once you're happy with the results, submit your solution.
github-learning-lab[bot] commented 4 years ago

Ooops! The query you submitted in 8842939a0bea4b5bae9a15fc0917d70550d8010f didn't find the right results. Please take a look at the comment and try again.

To submit a new iteration of your query, you just have to push a new commit to the same branch (master or the PR branch).

github-learning-lab[bot] commented 4 years ago

Congratulations, looks like the query you introduced in d7e02a7497bffe10b9a41c92171a1e7f5cd85dde finds the correct results!

If you created a pull request, merge it.

Let's continue to the next step.