-
Notifications
You must be signed in to change notification settings - Fork 695
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Stack guard #104
Comments
Yeah that sounds very useful. Is it ported to all platforms? BTW, the project name is spelled with a "-": Contiki-NG |
No, but I could do all platforms that Contiki-NG supports - except Cooja mote and native, I suppose.
Ideally, I would like to have an additional line in George's unified If there is no check in the main, then I'm probably ok with having it disabled by default. There still are some small benefits, like this (quoting myself):
(This second part is more speculative, but...) it could also be seen as a security feature, and evidence that Contiki is a robustly designed OS. I mean - it could make the system less vulnerable to attacks which aim to corrupt the global memory in some targeted way. As example, think of a function that has a large stack buffer, which is filled with data coming from an untrusted source - e.g. a packet coming from the network. If the buffer overlaps with some static memory at the runtime, that static memory could be changed in a specific way by just sending the right packet to the node. |
ok, we might consider enabling by default, happy to hear what others have to say. |
I do not feel strongly about either option, I can see benefits in both |
For checking the memory, one byte at a time, it takes around 0.2 milliseconds to check 1000 bytes of RAM on CC2650. Do you think that doing this once per second would be acceptable? Once 10 seconds? Minute? |
Maybe once every 10 seconds. I don't know |
every 10 should work - and I guess default on but documentation on how to turn of should be ok! |
Closed in #192 |
See the discussion here: contiki-os/contiki#2089
I can adapt it for Contiki-NG (some work required) and resubmit here.
The one thing remaining to discuss here: do you have objections against it being enabled by default?
As I stated in the "old" Contiki PR discussion, I believe it would be much more useful if enabled. "Release" builds can always explicitly remove it, by simply adding a compilation flag.
The text was updated successfully, but these errors were encountered: