• Home
Name Date Size #Lines LOC

..--

include/12-May-2024-1,209694

src/12-May-2024-9,2106,846

.gitignoreD12-May-20244 21

BUILD.gnD12-May-20242.4 KiB8885

LICENSED12-May-20249 KiB12473

MakefileD12-May-2024991 4534

OAT.xmlD12-May-20243.7 KiB5710

README.OpenSourceD12-May-2024618 1211

README.en.mdD12-May-20241.2 KiB5948

README.mdD12-May-20241.1 KiB5649

bundle.jsonD12-May-20241.4 KiB4141

libsec_src.gniD12-May-20243 KiB5956

README.OpenSource

1[
2    {
3        "Name"                  : "bounds_checking_function",
4        "License"               : "Mulan Permissive Software License,Version 2",
5        "License File"          : "LICENSE",
6        "Version Number"        : "v1.1.11",
7        "Owner"                 : "jianghan2@huawei.com",
8        "Upstream URL"          : "https://gitee.com/openeuler/libboundscheck",
9        "Description"           : "following the standard of C11 Annex K (bound-checking interfaces), functions of the common memory/string operation classes, such as memcpy_s, strcpy_s, are selected and implemented."
10    }
11]
12

README.en.md

1# libboundscheck
2
3#### Description
4
5- following the standard of C11 Annex K (bound-checking interfaces), functions of the common memory/string operation classes, such as memcpy_s, strcpy_s, are selected and implemented.
6
7- other standard functions in C11 Annex K will be analyzed in the future and implemented in this organization if necessary.
8
9- handles the release, update, and maintenance of bounds_checking_function.
10
11#### Function List
12
13- memcpy_s
14- wmemcpy_s
15- memmove_s
16- wmemmove_s
17- memset_s
18- strcpy_s
19- wcscpy_s
20- strncpy_s
21- wcsncpy_s
22- strcat_s
23- wcscat_s
24- strncat_s
25- wcsncat_s
26- strtok_s
27- wcstok_s
28- sprintf_s
29- swprintf_s
30- vsprintf_s
31- vswprintf_s
32- snprintf_s
33- vsnprintf_s
34- scanf_s
35- wscanf_s
36- vscanf_s
37- vwscanf_s
38- fscanf_s
39- fwscanf_s
40- vfscanf_s
41- vfwscanf_s
42- sscanf_s
43- swscanf_s
44- vsscanf_s
45- vswscanf_s
46- gets_s
47
48
49#### Build
50
51```
52CC=gcc make
53```
54The generated Dynamic library libboundscheck.so is stored in the newly created directory lib.
55
56#### How to use
571. Copy the libboundscheck.so to the library file directory, for example: "/usr/local/lib/".
58
592. To use the libboundscheck, add the “-lboundscheck” parameters to the compiler, for example: “gcc -g -o test test.c -lboundscheck”. 

README.md

1# libboundscheck
2
3#### 介绍
4- 遵循C11 Annex K (Bounds-checking interfaces)的标准,选取并实现了常见的内存/字符串操作类的函数,如memcpy_s、strcpy_s等函数。
5- 未来将分析C11 Annex K中的其他标准函数,如果有必要,将在该组织中实现。
6- 处理边界检查函数的版本发布、更新以及维护。
7
8#### 函数清单
9
10- memcpy_s
11- wmemcpy_s
12- memmove_s
13- wmemmove_s
14- memset_s
15- strcpy_s
16- wcscpy_s
17- strncpy_s
18- wcsncpy_s
19- strcat_s
20- wcscat_s
21- strncat_s
22- wcsncat_s
23- strtok_s
24- wcstok_s
25- sprintf_s
26- swprintf_s
27- vsprintf_s
28- vswprintf_s
29- snprintf_s
30- vsnprintf_s
31- scanf_s
32- wscanf_s
33- vscanf_s
34- vwscanf_s
35- fscanf_s
36- fwscanf_s
37- vfscanf_s
38- vfwscanf_s
39- sscanf_s
40- swscanf_s
41- vsscanf_s
42- vswscanf_s
43- gets_s
44
45#### 构建方法
46
47运行命令
48```
49make CC=gcc
50```
51生成的动态库libboundscheck.so存放在新创建的lib目录下。
52
53#### 使用方法
541. 将构建生成的动态库libboundscheck.so放到库文件目录下,例如:"/usr/local/lib/"。
55
562. 为使用libboundscheck,编译程序时需增加编译参数"-lboundscheck",例如:"gcc -g -o test test.c -lboundscheck"。