seL4 / sel4-tutorials

Tutorials for working with seL4 and/or CAmkES.

Home Page:https://docs.sel4.systems/Tutorials

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Solution code not hidden in --tut hello-camkes-1 gen

Ben-PH opened this issue · comments

commented

In hello-camkes-1/interfaces/HelloSimple.idl4 Reading the hint, it seems that the following is expected

/* Simple RPC interface */
procedure HelloSimple {
    /* TODO define RPC functions */
    /* hint 1: define at least one function that takes a string as input parameter. call it say_hello. no return value
     * hint 2: look at https://github.com/seL4/camkes-tool/blob/master/docs/index.md#creating-an-application
     */
};

got:

/* Simple RPC interface */
procedure HelloSimple {
    /* TODO define RPC functions */
    /* hint 1: define at least one function that takes a string as input parameter. call it say_hello. no return value
     * hint 2: look at https://github.com/seL4/camkes-tool/blob/master/docs/index.md#creating-an-application
     */
    void say_hello(in string str);
};

If you go to tutorials/hello-camkes-1.md, line 177, you can see the filter-block with the line in question.

/*- filter File("interfaces/HelloSimple.idl4") --*/
/* Simple RPC interface */
procedure HelloSimple {
/*-- filter TaskContent("hello", TaskContentType.BEFORE, subtask="interface") -*/
    /* TODO define RPC functions */
    /* hint 1: define at least one function that takes a string as input parameter. call it say_hello. no return value
     * hint 2: look at https://github.com/seL4/camkes-tool/blob/master/docs/index.md#creating-an-application
     */
/*-- endfilter -*/
/*-- filter TaskContent("hello", TaskContentType.COMPLETED, subtask="interface") -*/
    void say_hello(in string str);
/*-- endfilter -*/
};
/*-- endfilter -*/

This approach to filtering and generation is new to me. Not sure about what sort of changes might be needed, assuming this isn't working as intended.

I added a PR that fixes the issue.