2
0
mirror of https://github.com/boostorg/context.git synced 2026-01-19 16:12:17 +00:00

30 Commits

Author SHA1 Message Date
Dirk Stolle
1775cebd4f Fix several typos 2025-05-01 23:26:37 +02:00
Oliver Kowalke
d811245d08 update documentation 2024-03-10 20:20:54 +01:00
PeterYang12
3484575878 Add shadow stack support for fcontext
Shadow stack is part of Intel's Control-Flow Enforcement Technology.

    Whenever a function is called, the return address is pushed onto both
    the regular stack and the shadow stack. When that function returns, the
    return addresses are popped off both stacks and compared; if they fail
    to match, #CP raised.

    Backport this commit from https://github.com/php/php-src/pull/9283
    With this commit, we create shadow stack with syscall map_shadow_stack
    (no.451) for each fiber context and switch the shadow stack accordingly
    during fcontext switch.

Signed-off-by: PeterYang12 <yuhan.yang@intel.com>
Signed-off-by: chen-hu-97 <hu1.chen@intel.com>
2022-09-29 22:58:22 -07:00
Antony Polukhin
2f0b5034b7 Support for stack protection 2022-09-17 18:38:12 +03:00
Oliver Kowalke
14b4f45187 docu: sanitizer support 2019-10-02 08:17:24 +02:00
Oliver Kowalke
0c754f90c5 execution_context removed 2019-08-29 13:42:03 +02:00
Oliver Kowalke
fa890b1c4d adapt Jamfiles for new properties 2017-06-04 20:27:03 +02:00
Oliver Kowalke
4b8a730919 support ucontext_t in callcc() 2017-06-01 18:20:02 +02:00
Oliver Kowalke
518ba02aa2 docu: add hint how execution_context-API can be used 2017-04-09 19:10:23 +02:00
Oliver Kowalke
03573d7e7e Update stack.qbk 2017-03-14 14:25:23 +01:00
Oliver Kowalke
decef3c69a typo in docu 2016-03-04 18:27:56 +01:00
Oliver Kowalke
6dfe40a916 fix typos in docu 2016-03-04 18:02:06 +01:00
Oliver Kowalke
7eb8302865 pooled_fixedsize_stack uses boost.pool 2016-03-04 17:56:11 +01:00
Oliver Kowalke
073e3ce15e update documentation 2016-02-27 20:21:09 +01:00
Oliver Kowalke
782d70f5be use boost::pool::pool<> in fixedsize_stack 2016-02-27 16:45:52 +01:00
Oliver Kowalke
1bf9f6dfdb documentation updated 2016-01-12 20:29:58 +01:00
Oliver Kowalke
4f9df7d8e4 segmented-stacks=on -> only segmented_stack can be used 2015-10-18 19:16:19 +02:00
Oliver Kowalke
1a119ca612 add support for Valgrind 2015-01-29 19:11:44 +01:00
Oliver Kowalke
2dce78f1bf update docu 2015-01-23 22:27:08 +01:00
Oliver Kowalke
aba41e54cc update documentation 2015-01-23 22:19:23 +01:00
Oliver Kowalke
ba36e3d243 add support for execution_context 2014-11-21 20:21:47 +01:00
Oliver Kowalke
f1f7a800a5 update documentation 2014-02-20 20:38:23 +01:00
Oliver Kowalke
dbfeda223d context: simple_stack_allocator moved to examples directory, guarded_stack_allocator removed
[SVN r81346]
2012-11-14 17:30:45 +00:00
Oliver Kowalke
5fe939cd06 context: namespace renamed to 'context'; spltting up asm files
[SVN r80529]
2012-09-15 06:31:49 +00:00
Oliver Kowalke
70cd2a52a5 context: fix TABs, pagesize() added in docu
[SVN r80425]
2012-09-06 20:18:23 +00:00
Oliver Kowalke
854c49d321 context: return pointer to fcontext_t
- make_fcontext() allocated fcontext_t on context stack and return pointer
 - stack_allocator renamed to guarded_stack_allocator
 - simple_stack_allocator using calloc()/free() added
 - pagesize() made public accessible


[SVN r80423]
2012-09-06 19:43:07 +00:00
Oliver Kowalke
daf017cb4c context: refactoring stack_allocator (Windows stack sizes etc.)
[SVN r80375]
2012-09-03 17:06:56 +00:00
Oliver Kowalke
f30ee90b4e context: correct stack frames on arm, mips, ppc
- alignment of stack frame for arm, mips, ppc
 - stack::allocate() returns address of stack begin


[SVN r80354]
2012-09-01 22:56:52 +00:00
Oliver Kowalke
e32d499ae2 context: new layout for fcontext_t
- fcontext_t takes pointer to stack (lower addresses) and stack size
 - make_fcontext() computes start address of stack pointer depending on
   architecture (growing upwards, downwards)
 - make_fcontext() preserves frame pointer on intel
 - stack alignment corrected on intel
 - BOOST_USE_UCONTEXT for performance measurements added


[SVN r80338]
2012-08-31 19:50:07 +00:00
Oliver Kowalke
13b4a5b3bd context: library stripped
[SVN r77938]
2012-04-12 18:42:36 +00:00