zephyr/tests/kernel/test_stackprot/nanokernel
Allan Stephens 98e1e0674c unified/test: Fix issues affecting stack canary applications
The nanokernel version of this application now uses its own source
file to eliminate its reliance on the build system setting the
CONFIG_MICROKERNEL and CONFIG_NANOKERNEL options correctly
(which the unified kernel build system doesn't do).

Change-Id: Ife27f8172b2be33b95136ccdfa29522c8a6fba0b
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-10-11 09:59:16 -05:00
..
src unified/test: Fix issues affecting stack canary applications 2016-10-11 09:59:16 -05:00
Makefile unified/test: Fix issues affecting stack canary applications 2016-10-11 09:59:16 -05:00
prj.conf tests: remove duplicate kernel configs and usage of ARCH 2016-05-23 16:46:08 +00:00
README.txt tests: move kernel tests to tests/ 2016-02-11 18:06:33 +00:00
testcase.ini unified/test: Fix issues affecting stack canary applications 2016-10-11 09:59:16 -05:00

Title: Stack Protection Support

Description:

This test verifies that stack canaries operate as expected in the nanokernel.

---------------------------------------------------------------------------

This nanokernel project outputs to the console.  It can be built and executed
on QEMU as follows:

    make qemu

---------------------------------------------------------------------------

Troubleshooting:

Problems caused by out-dated project information can be addressed by
issuing one of the following commands then rebuilding the project:

    make clean          # discard results of previous builds
                        # but keep existing configuration info
or
    make pristine       # discard results of previous builds
                        # and restore pre-defined configuration info

---------------------------------------------------------------------------

Sample Output:

tc_start() - Test Stack Protection Canary

Starts main
Starts fiber1
fiber1: Input string is too long and stack overflowed!

***** Stack Check Fail! *****
Current context ID = 0x00102628
Faulting instruction address = 0xdeaddead
Fatal fiber error! Aborting fiber.
main: Stack ok
main: Stack ok
main: Stack ok
main: Stack ok
main: Stack ok
main: Stack ok
===================================================================
PASS - main.
===================================================================
PROJECT EXECUTION SUCCESSFUL