主要内容

本页采用了机器翻译。点击此处可查看英文原文。

检查配置参数是否符合安全编码标准

检查 IDmathworks.security.CodeGenSettings

识别可能影响安全编码标准合规性的配置参数。

描述

遵循此检查的建议可以提高生成符合 CERT C、CWE、ISO/IEC TS 17961 安全编码标准的代码的可能性。

适用于 Embedded Coder®Simulink® Check™

结果和建议的操作

条件建议的操作
诊断

配置参数模块输出为 Inf 或 NaN 设置为错误,并且支持非有限数设置为 on

配置参数模块输出为 Inf 或 NaN 设置为支持非有限数设置为 off

支持非有限数为:

  • on,将模块输出为 Inf 或 NaN 设置为警告

  • off,将模块输出为 Inf 或 NaN 设置为警告错误

配置参数 Model Verification 模块启用设置为使用局部设置全部启用Model Verification 模块启用设置为全部禁用
配置参数无向事件广播设置为警告无向事件广播设置为错误
配置参数溢出时绕回设置为溢出时绕回设置为警告错误
硬件实现
配置参数生产硬件有符号整数除法舍入方式设置为未定义生产硬件有符号整数除法舍入方式设置为向零向下舍入
已选择配置参数采用算术移位方式右移有符号整数清除采用算术移位方式右移有符号整数
仿真目标
配置参数 MATLAB 函数的编译时递归限制的值不是 0MATLAB 函数的编译时递归限制设置为 0
已选择配置参数在 MATLAB 函数中使用动态内存分配清除在 MATLAB 函数中使用动态内存分配
已选择配置参数为 MATLAB 函数启用运行时递归清除为 MATLAB 函数启用运行时递归
代码生成
配置参数代码替换库未设置为AUTOSAR 4.x代码替换库设置为AUTOSAR 4.x
已选择配置参数外部模式清除外部模式

配置参数包括注释已清除。

选择包括注释
已选择配置参数 MAT 文件记录清除 MAT 文件记录
对于基于 ERT 的目标系统,配置参数 MATLAB 用户注释将被清除。选择 MATLAB 用户注释
已选择配置参数用有符号按位移位替代乘以 2 的幂的运算清除用有符号按位移位替代乘以 2 的幂的运算
对于基于 ERT 的目标系统,选择配置参数支持连续时间清除支持连续时间
对于基于 ERT 的目标系统,选择配置参数支持非内联 S-Function清除支持非内联 S-Function
配置参数系统目标文件设置为基于 GRT 的目标。系统目标文件设置为基于 ERT 的目标。

已选择配置参数使用动态内存分配进行模型初始化

清除使用动态内存分配进行模型初始化

注意

仅当代码接口打包设置为可重用函数时才选择。

操作结果

点击全部修改可将参数值更改为推荐值。

注意

当您为基于 GRT 的目标模型点击全部修改时,模型顾问不会将系统目标文件配置参数更新为基于 ERT 的系统。

参数子检查取决于结果表中标记为 D 的参数的结果。当结果为 D-警告时,结果表中的当前值列会显示子检查的先决约束未满足。更改参数后,请重新运行检查。

注意

某些子检查是针对基于 ERT 的系统的配置参数特有的。除非您将模型更改为基于 ERT 的系统,否则点击全部修改时这些参数不会更新。

另请参阅

MISRA C (Embedded Coder)