if (mem->is_rox)
ret = execmem_restore_rox(mem->base, mem->size); elseif (IS_ENABLED(CONFIG_STRICT_MODULE_RWX))
ret = module_set_memory(mod, type, set_memory_rox); else
ret = module_set_memory(mod, type, set_memory_x); if (ret) return ret;
} return0;
}
int module_enable_rodata_ro(conststruct module *mod)
{ int ret;
if (!IS_ENABLED(CONFIG_STRICT_MODULE_RWX) || !rodata_enabled) return0;
ret = module_set_memory(mod, MOD_RODATA, set_memory_ro); if (ret) return ret;
ret = module_set_memory(mod, MOD_INIT_RODATA, set_memory_ro); if (ret) return ret;
return0;
}
int module_enable_rodata_ro_after_init(conststruct module *mod)
{ if (!IS_ENABLED(CONFIG_STRICT_MODULE_RWX) || !rodata_enabled) return0;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.