目录
目录Readme.md

赛题背景

随着安全需求日益增长,C语言中的传统函数已不能满足当今的安全需求。C11标准的附录K中提到的安全函数就是为了解决这个问题而产生的。为此,基于openKylin开源软件仓库safeclib,我们希望进一步完善其提供的安全函数。

实现要求

1 读取函数系列

读取函数系列的改动主要在做了对%s, %c, and %[ 的支持

a. fscanf_s 按照C11标准附录K中的要求实现fscanf_s函数。函数应严格检查格式化字符串长度,并确保在读取时不会超出提供的缓冲区大小。

b. scanf_s 与fscanf_s类似,但是从标准输入读取。

c. sscanf_s 从提供的字符串中读取,确保缓冲区长度不会被超出。

d. vfscanf_s 与fscanf_s相似,但是接受va_list参数。

e. vscanf_s 与scanf_s相似,但是接受va_list参数。

f. vsscanf_s 与sscanf_s相似,但是接受va_list参数。

2 宽字符读取函数系列

宽字符读取函数系列,与上一个系列类似,主要改成了使用宽字符

a. fwscanf_s 按照C11标准附录K中的要求实现fwscanf_s函数,与fscanf_s功能类似,但处理宽字符。

b. swscanf_s 与fwscanf_s类似,但从提供的宽字符字符串中读取。

c. vfwscanf_s 与fwscanf_s相似,但接受va_list参数。

d. vswscanf_s 与swscanf_s相似,但接受va_list参数。

e. vwscanf_s 从标准输入读取宽字符,并接受va_list参数。

f. wscanf_s 从标准输入读取宽字符。

同时在每个函数文件里,实现了其测试函数。 仓库代码还需要放到safelib中加入头文件后进行测试。目前仅做了简单验证,后续需要完善。

关于
87.0 KB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

©Copyright 2023 CCF 开源发展委员会
Powered by Trustie& IntelliDE 京ICP备13000930号