blob: 633cd0b47c679627bd8a7d0ec89a71b26724da73 [file] [log] [blame]
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
#
# Copyright 2015 Oracle and/or its affiliates. All rights reserved.
#
# Oracle and Java are registered trademarks of Oracle and/or its affiliates.
# Other names may be trademarks of their respective owners.
#
# The contents of this file are subject to the terms of either the GNU
# General Public License Version 2 only ("GPL") or the Common
# Development and Distribution License("CDDL") (collectively, the
# "License"). You may not use this file except in compliance with the
# License. You can obtain a copy of the License at
# http://www.netbeans.org/cddl-gplv2.html
# or nbbuild/licenses/CDDL-GPL-2-CP. See the License for the
# specific language governing permissions and limitations under the
# License. When distributing the software, include this License Header
# Notice in each file and include the License file at
# nbbuild/licenses/CDDL-GPL-2-CP. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the GPL Version 2 section of the License file that
# accompanied this code. If applicable, add the following below the
# License Header, with the fields enclosed by brackets [] replaced by
# your own identifying information:
# "Portions Copyrighted [year] [name of copyright owner]"
#
# If you wish your version of this file to be governed by only the CDDL
# or only the GPL Version 2, indicate your decision by adding
# "[Contributor] elects to include this software in this distribution
# under the [CDDL or GPL Version 2] license." If you do not indicate a
# single choice of license, a recipient has the option to distribute
# your version of this file under either the CDDL, the GPL Version 2 or
# to extend the choice of license to its licensees as provided above.
# However, if you add GPL Version 2 code and therefore, elected the GPL
# Version 2 license, then the option applies only if the new code is
# made subject to such option by the copyright holder.
#
# Contributor(s):
#
# Portions Copyrighted 2015 Sun Microsystems, Inc.
LAB_security_error=\u5b89\u5168\u9519\u8bef
LAB_security_warning=\u5b89\u5168\u8b66\u544a
SecurityCheck_NAME=C \u5e93\u51fd\u6570
SecurityCheck_DESCRIPTION=\u68c0\u67e5\u4e0d\u5b89\u5168 C \u5e93\u51fd\u6570\u7684\u4f7f\u7528\u60c5\u51b5
DisableHint=\u914d\u7f6e\u63d0\u793a
#AvoidFunctionUsage
FunctionUsageAudit.name=\u4f7f\u7528{0}
FunctionUsageAudit.alternative=\n\u66ff\u4ee3: {0}
#issues descriptions
FunctionUsageAudit.gets.description=\u5728\u5b58\u50a8\u8f93\u5165\u65f6, \u6b64\u51fd\u6570\u4e0d\u68c0\u67e5\u8303\u56f4\u3002\u6b64\u51fd\u6570\u65e0\u6cd5\u5b89\u5168\u4f7f\u7528\u3002
FunctionUsageAudit.cftime.description=\u8fd9\u4e9b\u4f8b\u7a0b\u4e0d\u5bf9\u8f93\u51fa\u7f13\u51b2\u533a\u6267\u884c\u8303\u56f4\u68c0\u67e5, \u53ef\u80fd\u4f1a\u901a\u8fc7\u73af\u5883\u53d8\u91cf CFTIME \u5bfc\u5165\u7528\u6237\u6570\u636e
FunctionUsageAudit.strcat.description=\u65e0\u6cd5\u5c06\u8fd9\u4e9b\u51fd\u6570\u9650\u5236\u4e3a\u6700\u5927\u7f13\u51b2\u533a\u5927\u5c0f\u3002\u4f7f\u7528\u8fd9\u4e9b\u51fd\u6570\u65f6, \u59cb\u7ec8\u4f1a\u5f3a\u884c\u8981\u6c42\u5ba1\u6838\u8005\u9075\u5b88\u903b\u8f91, \u800c\u4e14\u4f1a\u9632\u6b62\u81ea\u52a8\u626b\u63cf\u6e90\u4ee3\u7801\u4e2d\u6709\u65e0\u6f0f\u6d1e\u3002
FunctionUsageAudit.access.description=\u6b64\u51fd\u6570\u6ca1\u6709\u4f5c\u7528, \u56e0\u4e3a\u5b83\u63d0\u4f9b\u7684\u4fe1\u606f\u5728\u60a8\u4f7f\u7528\u5b83\u7684\u65f6\u5019\u5df2\u7ecf\u8fc7\u671f\u3002\n\u4f7f\u7528 access() \u540e\u8ddf open() \u4f1a\u5bfc\u81f4\u65e0\u6cd5\u89e3\u51b3\u7684\u4e89\u7528\u60c5\u51b5\u3002
FunctionUsageAudit.strncat.description=strncat() \u51fd\u6570\u5f88\u96be\u4f7f\u7528, \u56e0\u4e3a\u5b83\u9700\u8981\u8ba1\u7b97\u76ee\u6807\u7f13\u51b2\u533a\u7684\u5408\u9002\u5927\u5c0f
FunctionUsageAudit.strncpy.description=strncpy() \u51fd\u6570\u4e0d\u4fdd\u8bc1\u76ee\u6807\u7f13\u51b2\u533a\u4ee5\u7a7a\u503c\u5b57\u7b26\u7ed3\u5c3e\u3002
FunctionUsageAudit.chmod.description=\u8fd9\u4e9b\u51fd\u6570\u5bf9\u8def\u5f84\u540d\u6267\u884c\u64cd\u4f5c, \u6613\u4e8e\u5bfc\u81f4\u4e89\u7528\u60c5\u51b5\u3002\n\u901a\u5e38, \u7a0b\u5e8f\u65e0\u9700\u8c03\u7528 chown/chmod \u800c\u662f\u9075\u4ece\u5f53\u524d uid (\u5728\u6253\u5f00\u6587\u4ef6\u4e4b\u524d\u5207\u6362\u56de\u5b83) \u548c umask\u3002
FunctionUsageAudit.alloca.description=\u5982\u679c\u8fd4\u56de\u7684\u6307\u9488\u5728\u5806\u6808\u754c\u9650\u5185\u5219\u4e0d\u68c0\u67e5 -\n\u8d85\u8fc7\u4e00\u9875\u7684\u5185\u5b58\u5206\u914d\u53ef\u80fd\u4f1a\u8df3\u8fc7\u5806\u6808\u4fdd\u62a4\u9875\u800c\u8fdb\u5165\u5176\u4ed6\u5df2\u5206\u914d\u9875\u4e2d\u5e76\u8986\u76d6\u5b83\u4eec\u3002
FunctionUsageAudit.drand48.description=\u8fd9\u662f\u4e00\u4e2a\u5f31\u968f\u673a\u6570\u751f\u6210\u5668; \u65e0\u52a9\u4e8e\u63d0\u9ad8\u5b89\u5168\u6027\u3002
FunctionUsageAudit.execvp.description=\u8fd9\u4e9b\u51fd\u6570\u5341\u5206\u5371\u9669, \u4e0d\u80fd\u5728\u5e93\u6216\u7279\u6743\u547d\u4ee4\u548c\u5b88\u62a4\u8fdb\u7a0b\u4e2d\u4f7f\u7528, \u56e0\u4e3a\u5b83\u4eec\u901a\u8fc7\u5728 \nPATH \u73af\u5883\u53d8\u91cf\u4e2d\u641c\u7d22\u76ee\u5f55\u6765\u67e5\u627e\u53ef\u6267\u884c\u6587\u4ef6, \u800c\u8fd9\u5b8c\u5168\u7531\u7528\u6237\u63a7\u5236\u3002
FunctionUsageAudit.sprintf.description=\u5178\u578b\u7684\u7f13\u51b2\u533a\u6ea2\u51fa\u539f\u56e0\u3002\u5982\u679c\u7531\u4e8e\u4efb\u4f55\u539f\u56e0\u5fc5\u987b\u4f7f\u7528\u8fd9\u4e9b\u51fd\u6570, \u8bf7\u786e\u4fdd\u7b2c\u4e8c\u4e2a\n\u53c2\u6570\u4e0d\u80fd\u7531\u7528\u6237\u63a7\u5236, \u800c\u4e14\u786e\u4fdd\u8fd9\u4e9b\u53c2\u6570\u4e0d\u4f1a\u6ea2\u51fa\u76ee\u6807\u7f13\u51b2\u533a\u3002
FunctionUsageAudit.getlogin.description=getlogin() \u8fd4\u56de\u7684\u503c\u4e0d\u53ef\u9760, \u8fd9\u4ec5\u4ec5\u662f\u7528\u6237\u540d\u7684\u63d0\u793a\u3002
FunctionUsageAudit.getpass.description=\u53ea\u4f7f\u7528\u8f93\u5165\u7684\u524d 8 \u4e2a\u5b57\u8282\u3002\u907f\u514d\u5728\u65b0\u4ee3\u7801\u4e2d\u4f7f\u7528\u5b83\u3002
FunctionUsageAudit.mktemp.description=\u751f\u6210\u4e00\u4e2a\u4e34\u65f6\u6587\u4ef6\u540d, \u4f46\u5e76\u4e0d\u80fd\u4fdd\u8bc1\u751f\u6210\u7684\u8def\u5f84\u540d\u80fd\u5b89\u5168\u5730\u4f7f\u7528, \u56e0\u4e3a\n\u5728 mktemp() \u4e2d\u7684\u68c0\u67e5\u548c\u5e94\u7528\u7a0b\u5e8f\u7684\u540e\u7eed open() \u4e4b\u95f4\u5b58\u5728\u4e89\u7528\u60c5\u51b5\u3002
FunctionUsageAudit.popen.description=\u6b64\u5e93\u8c03\u7528\u59cb\u7ec8\u6d89\u53ca\u5230 shell, \u8be5 shell \u53c8\u4f1a\u6d89\u53ca\u5230 PATH, IFS \u548c\u5176\u4ed6\u73af\u5883\u53d8\u91cf\u4ee5\u53ca\u5bf9\u7279\u6b8a\u5b57\u7b26\u7684\u89e3\u91ca\u3002\n\u4f7f\u7528 posix_spawn() \u6765\u6267\u884c\u5176\u4ed6\u7a0b\u5e8f, \u6b64\u65f6 waitpid() \u6216 pipe() \u662f\u5fc5\u9700\u7684\u3002
FunctionUsageAudit.tempnam.description=\u6b64\u51fd\u6570\u4e0d\u9002\u5408, \u56e0\u4e3a\u4f1a\u751f\u6210\u65e0\u6cd5\u9884\u6d4b\u7684\u6587\u4ef6\u540d\u3002\n\u5728\u6587\u4ef6\u540d\u7684\u751f\u6210\u548c\u4f7f\u7528 (\u4f8b\u5982 open()) \u4e4b\u95f4\u5b58\u5728\u4e89\u7528\u60c5\u51b5
FunctionUsageAudit.truncate.description=\u6b64\u51fd\u6570\u6613\u4e8e\u4ea7\u751f\u8def\u5f84\u540d\u4e89\u7528\u60c5\u51b5\u3002\n\u5728\u5b89\u5168 open() \u4e4b\u540e\u4f7f\u7528 ftruncate()\u3002
FunctionUsageAudit.utmpname.description=\u4f7f\u7528\u9ed8\u8ba4 utmp \u548c utmpx \u6587\u4ef6\u3002
FunctionUsageAudit.kvm_open.description=\u751f\u6210\u4e00\u4e2a\u4e34\u65f6\u6587\u4ef6\u540d, \u4f46\u5e76\u4e0d\u80fd\u4fdd\u8bc1\u751f\u6210\u7684\u8def\u5f84\u540d\u80fd\u5b89\u5168\u5730\u4f7f\u7528, \u56e0\u4e3a\n\u5728 mktemp() \u4e2d\u7684\u68c0\u67e5\u548c\u5e94\u7528\u7a0b\u5e8f\u7684\u540e\u7eed open() \u4e4b\u95f4\u5b58\u5728\u4e89\u7528\u60c5\u51b5\u3002
FunctionUsageAudit.open.description=\u5728\u4ece\u7279\u6743\u7a0b\u5e8f\u6253\u5f00\u4ee5\u8bfb\u53d6\u65f6, \u8bf7\u901a\u8fc7\u653e\u5f03\u7279\u6743\u6216\u8005\u5c06\u6709\u6548\u7684 uid \u8bbe\u7f6e\u4e3a\u771f\u5b9e\u7684 uid, \u6765\u786e\u4fdd\u4ee5\u7528\u6237\u8eab\u4efd\u6253\u5f00\u6587\u4ef6\u3002\n\u5728\u6253\u5f00\u4ee5\u5199\u5165\u65f6, \u8bf7\u4f7f\u7528 O_NOFOLLOW \u548c O_NOLINKS \u6807\u5fd7, \u6216\u8005\u4f7f\u7528 O_CREAT|O_EXCL \u6765\u786e\u4fdd\u521b\u5efa\u65b0\u6587\u4ef6\u800c\u4e0d\u662f\u6253\u5f00\u73b0\u6709\u6587\u4ef6\u3002\n\u6253\u5f00\u6587\u4ef6\u65f6, \u8bf7\u8003\u8651\u662f\u5426\u5e94\u5728\u67d0\u4e2a exec() \u8c03\u7528\u7684\u6574\u4e2a\u8fc7\u7a0b\u4e2d\u4f7f\u6587\u4ef6\u63cf\u8ff0\u7b26\u4fdd\u6301\u6253\u5f00\u3002
FunctionUsageAudit.dup.description=\u8fd4\u56de\u6e05\u9664\u4e86 FD_CLOEXEC \u7684\u6587\u4ef6\u63cf\u8ff0\u7b26, \u56e0\u6b64\u5728\u7a0b\u5e8f\u8c03\u7528 exec() \u65f6\u53ef\u80fd\u4f1a\u6cc4\u6f0f\u3002\u5728\u8fd4\u56de\u8fd9\u4e9b\u51fd\u6570\u540e, \u65e7\u4ee3\u7801\u5f88\u5feb\n\u4f1a\u6267\u884c fcntl() \u8c03\u7528\u4ee5\u8bbe\u7f6e\u8be5\u6807\u5fd7; \u4f46\u5728\u591a\u7ebf\u7a0b\u4ee3\u7801 (\u5305\u62ec\u4e86\u4e00\u4e9b\u7a0b\u5e8f, \u5b83\u4eec\u672c\u8eab\u4ec5\u8fd0\u884c\u4e00\u4e2a\u7ebf\u7a0b, \u4f46\u53ef\u80fd\u4e0e\u8fd0\u884c\n\u5176\u4ed6\u7ebf\u7a0b\u7684\u5e93\u94fe\u63a5) \u4e2d, \u5b58\u5728\u4e0e\u53e6\u4e00\u4e2a\u7ebf\u7a0b\u4e89\u7528\u7684\u53ef\u80fd\u6027\u3002\u5bf9 fcntl \u7684 F_DUPFD_CLOEXEC \u548c F_DUP2FD_CLOEXEC \u8c03\u7528\n(\u5728 Solaris 11 \u548c\u66f4\u9ad8\u7248\u672c\u4e2d\u63d0\u4f9b) \u5c06\u91cd\u590d\u548c\u6807\u5fd7\u8bbe\u7f6e\u7ec4\u5408\u4e3a\u4e00\u4e2a\u539f\u5b50\u64cd\u4f5c, \u56e0\u6b64\u4e0d\u5b58\u5728\u4e89\u7528\u60c5\u51b5\u3002
FunctionUsageAudit.fopen.description=\u65e0\u6cd5\u901a\u8fc7\u8fd9\u79cd\u65b9\u6cd5\u5b89\u5168\u521b\u5efa\u6587\u4ef6\u3002\u4f46\u662f, \u786e\u8ba4\u5b58\u5728\u8def\u5f84\u540d\u4e4b\u540e (\u4f8b\u5982\u8c03\u7528 mkstemp() \u4e4b\u540e), \n\u53ef\u4ee5\u901a\u8fc7\u8fd9\u79cd\u65b9\u6cd5\u6765\u6253\u5f00\u8fd9\u4e9b\u8def\u5f84\u540d\u3002\u5728\u53e6\u4e00\u4e9b\u60c5\u51b5\u4e0b, \u5e94\u4f7f\u7528\u540e\u8ddf fdopen() \u7684 open() \u5b89\u5168\u8c03\u7528\u3002
FunctionUsageAudit.lstat.description=\u6b64\u51fd\u6570\u4e0d\u9002\u7528\u4e8e\u68c0\u67e5\u67d0\u4e2a\u6587\u4ef6\u662f\u5426\u5b58\u5728\u3002\u540e\u8ddf open() \u65f6, \u4f1a\u51fa\u73b0\u65e0\u6cd5\u89e3\u51b3\u7684\u5185\u5728\u4e89\u7528\u60c5\u51b5\u3002
FunctionUsageAudit.bcopy.description=\u5373\u4f7f\u957f\u5ea6\u5df2\u77e5, \u4e5f\u4e0d\u5e94\u5f53\u7528\u4e8e\u590d\u5236\u5b57\u7b26\u4e32\u3002
FunctionUsageAudit.catopen.description=\u5e93\u548c\u7a0b\u5e8f\u4e0d\u5e94\u5f53\u9488\u5bf9\u7528\u6237\u63d0\u4f9b\u7684\u8def\u5f84\u540d\u8c03\u7528 catopen()\u3002\n\u53ef\u4ee5\u5229\u7528\u7528\u6237\u63d0\u4f9b\u7684\u6d88\u606f\u76ee\u5f55\u8f7b\u677e\u4e2d\u65ad\u7279\u6743\u4ee3\u7801\u3002
FunctionUsageAudit.chdir.description=\u6b64\u51fd\u6570\u4f1a\u5bfc\u81f4\u8def\u5f84\u540d\u4e89\u7528\u60c5\u51b5\u3002\u8bf7\u4e0d\u8981\u5728\u591a\u7ebf\u7a0b\u7a0b\u5e8f\u4e2d\u4f7f\u7528\u3002\n\u8981\u907f\u514d\u4e89\u7528\u60c5\u51b5, \u8bf7\u5728\u5bf9\u76ee\u5f55\u6267\u884c open() \u5e76\u4f7f\u7528 fstat() \u68c0\u67e5\u5c5e\u6027\u4e4b\u540e\u4f7f\u7528 fchdir()\u3002
FunctionUsageAudit.chroot.description=\u8fd0\u884c chroot \u4e4b\u540e\u7684\u73af\u5883\u4fdd\u62a4\u7ea7\u522b\u5f88\u4f4e; \u7a0b\u5e8f\u53ef\u4ee5\u8f7b\u677e\u5730\u907f\u5f00\u3002\u8bf7\u786e\u4fdd\u672a\u5728\u8fd0\u884c\u4e86 chroot() \u7684\n\u73af\u5883\u4e2d\u8fd0\u884c\u4efb\u4f55\u7279\u6743\u7a0b\u5e8f, \u5e76\u786e\u4fdd\u5728\u8fd0\u884c chroot() \u540e\u6267\u884c chdir() \u4ee5\u66f4\u6539\u4e3a\u65b0\u6839\u76ee\u5f55\u4e0b\u7684\u67d0\u4e2a\u4f4d\u7f6e\u3002
FunctionUsageAudit.copylist.description=\u6b64\u51fd\u6570\u6253\u5f00\u6587\u4ef6, \u5e76\u4e14\u53ea\u5e94\u7528\u4e8e\u6253\u5f00\u5df2\u77e5\u5b89\u5168\u7684\u8def\u5f84\u540d\u3002
FunctionUsageAudit.dlopen.description=\u4f20\u9012\u5230 dlopen \u7684\u53c2\u6570\u53ea\u5e94\u5f53\u662f\u975e\u9650\u5b9a\u8def\u5f84\u540d, \u8fd9\u4e9b\u8def\u5f84\u540d\u968f\u540e\u53ef\u4ee5\u4f7f\u7528\u8fd0\u884c\u65f6\u94fe\u63a5\u7a0b\u5e8f\u7684\u8def\u5f84\u6216\n\u5e76\u975e\u4ece\u7528\u6237\u8f93\u5165 (\u5305\u62ec\u6765\u81ea argv[0]!!!) \u6d3e\u751f\u7684\u5b8c\u6574\u8def\u5f84\u540d\u627e\u5230\u3002\u6ca1\u6709\u65b9\u6cd5\u53ef\u4ee5\u5b89\u5168\u6253\u5f00\u7528\u6237\u63d0\u4f9b\u7684\u5171\u4eab\u5bf9\u8c61; \nobject's _init() \u51fd\u6570\u5728 dlopen() \u8fd4\u56de\u4e4b\u524d\u6267\u884c\u3002
FunctionUsageAudit.execl.description=\u8bf7\u5728\u6267\u884c\u65b0\u7a0b\u5e8f\u4e4b\u524d\u786e\u4fdd\u73af\u5883\u65e0\u5371\u9669\u800c\u4e14\u5df2\u5173\u95ed\u4e0d\u5fc5\u8981\u7684\u6587\u4ef6\u63cf\u8ff0\u7b26\u3002
FunctionUsageAudit.fattach.description=\u5728\u6253\u5f00\u4e4b\u540e\u68c0\u67e5\u6587\u4ef6\u63cf\u8ff0\u7b26 (\u4f7f\u7528 fstat()), \u800c\u4e0d\u662f\u5728\u6253\u5f00\u4e4b\u524d\u68c0\u67e5\u8def\u5f84\u540d\u3002
FunctionUsageAudit.printf.description=\u7528\u6237\u6307\u5b9a\u7684\u683c\u5f0f\u5b57\u7b26\u4e32\u5b58\u5728\u98ce\u9669\u3002\n\u5982\u679c\u683c\u5f0f\u5b57\u7b26\u4e32\u6765\u81ea\u6d88\u606f\u76ee\u5f55, \u8bf7\u9a8c\u8bc1 NLSPATH \u64cd\u4f5c\u548c catopen()/catget() \u7528\u6cd5\u3002
FunctionUsageAudit.snprintf.description=\u7528\u6237\u6307\u5b9a\u7684\u683c\u5f0f\u5b57\u7b26\u4e32\u5b58\u5728\u98ce\u9669\u3002\n\u5982\u679c\u683c\u5f0f\u5b57\u7b26\u4e32\u6765\u81ea\u6d88\u606f\u76ee\u5f55, \u8bf7\u9a8c\u8bc1 NLSPATH \u64cd\u4f5c\u548c catopen()/catget() \u7528\u6cd5\u3002\nsnprintf() \u548c vsnprintf() \u8fd4\u56de\u5df2\u5199\u5165\u7f13\u51b2\u533a\u7684\u5b57\u7b26\u6570 (\u5982\u679c\u7f13\u51b2\u533a\u8db3\u591f\u5927)\u3002\n\u6ce8: \u4efb\u4f55\u53c2\u6570\u90fd\u4e0d\u80fd\u6307\u5411\u8f93\u51fa\u7f13\u51b2\u533a\u3002
FunctionUsageAudit.swprintf.description=\u7528\u6237\u6307\u5b9a\u7684\u683c\u5f0f\u5b57\u7b26\u4e32\u5b58\u5728\u98ce\u9669\u3002\n\u5982\u679c\u683c\u5f0f\u5b57\u7b26\u4e32\u6765\u81ea\u6d88\u606f\u76ee\u5f55, \u8bf7\u9a8c\u8bc1 NLSPATH \u64cd\u4f5c\u548c catopen()/catget() \u7528\u6cd5\u3002\n\u6ce8: \u4efb\u4f55\u53c2\u6570\u90fd\u4e0d\u80fd\u6307\u5411\u8f93\u51fa\u7f13\u51b2\u533a\u3002
FunctionUsageAudit.syslog.description=\u7528\u6237\u6307\u5b9a\u7684\u683c\u5f0f\u5b57\u7b26\u4e32\u5b58\u5728\u98ce\u9669\u3002\n\u5982\u679c\u683c\u5f0f\u5b57\u7b26\u4e32\u6765\u81ea\u6d88\u606f\u76ee\u5f55, \u8bf7\u9a8c\u8bc1 NLSPATH \u64cd\u4f5c\u548c catopen()/catget() \u7528\u6cd5\u3002
FunctionUsageAudit.scanf.description=\u626b\u63cf\u5b57\u7b26\u4e32\u65f6, \u8bf7\u786e\u4fdd\u6307\u5b9a\u7684\u683c\u5f0f\u5305\u62ec\u6700\u957f\u7f13\u51b2\u533a\u957f\u5ea6\u3002\n\u8bf7\u6ce8\u610f, \u76f8\u5e94\u7f13\u51b2\u533a\u5fc5\u987b\u81f3\u5c11\u5927 1 \u4e2a\u5b57\u8282, \u4ee5\u4fbf\u4e3a\u7ec8\u6b62 NUL \u5b57\u7b26\u7559\u51fa\u7a7a\u95f4\u3002
FunctionUsageAudit.ftw.description=\u6253\u5f00\u7b26\u53f7\u94fe\u63a5\u5e76\u8de8\u8fc7\u6302\u8f7d\u70b9\u3002\n\u4f7f\u7528\u8bbe\u7f6e\u4e86\u76f8\u5e94\u6807\u5fd7 (FTW_PHYS \u548c FTW_MOUNT \u7684\u7ec4\u5408) \u7684 nftw\u3002
FunctionUsageAudit.getenv.description=\u73af\u5883\u5b8c\u5168\u7531\u7528\u6237\u6307\u5b9a\u3002\u5e94\u5c3d\u53ef\u80fd\u5730\u907f\u514d\u5728\u5e93\u4e2d\u4f7f\u7528 getenv()\u3002\ngetenv() \u8fd4\u56de\u7684\u5b57\u7b26\u4e32\u6700\u957f\u53ef\u4ee5\u4e3a NCARGS \u4e2a\u5b57\u8282 (\u5f53\u524d\u5bf9\u4e8e 32 \u4f4d\u73af\u5883\u4e3a 1MB)\u3002\n\u4e0d\u5e94\u4fe1\u4efb\u6d3e\u751f\u81ea\u73af\u5883\u53d8\u91cf\u7684\u8def\u5f84\u540d\u3002\n\u5b83\u4eec\u4e0d\u5e94\u7528\u4f5c\u4efb\u610f *open() \u51fd\u6570 (\u5305\u62ec catopen() \u548c dlopen()) \u7684\u8f93\u5165\u3002
FunctionUsageAudit.mkdir.description=\u8bf7\u52a1\u5fc5\u7559\u610f\u6240\u7528\u7684\u8def\u5f84\u3002\n\u6b64\u51fd\u6570\u4e0d\u4f1a\u6253\u5f00\u6700\u540e\u4e00\u4e2a\u7ec4\u4ef6\u7684\u7b26\u53f7\u94fe\u63a5, \u56e0\u6b64\u5b83\u4eec\u76f8\u5bf9\u5b89\u5168\u3002
FunctionUsageAudit.strccpy.description=\u65e0\u6cd5\u5c06\u8fd9\u4e9b\u51fd\u6570\u9650\u5236\u4e3a\u6700\u5927\u7f13\u51b2\u533a\u5927\u5c0f\u3002\n\u4f7f\u7528\u8fd9\u4e9b\u51fd\u6570\u65f6, \u59cb\u7ec8\u4f1a\u5f3a\u884c\u8981\u6c42\u5ba1\u6838\u8005\u9075\u5b88\u903b\u8f91, \u800c\u4e14\u4f1a\u9632\u6b62\u81ea\u52a8\u626b\u63cf\u6e90\u4ee3\u7801\u4e2d\u6709\u65e0\u6f0f\u6d1e\u3002
FunctionUsageAudit.umask.description=\u4e0d\u5e94\u5728\u5e93\u6216\u5e94\u7528\u7a0b\u5e8f\u4e2d\u4f7f\u7528; \n\u7528\u6237\u5df2\u77e5\u6700\u4f73\u65b9\u6848\u5e76\u5e94\u4f7f\u7528\u5176 umask\u3002\u5bf9\u4e8e\u591a\u7ebf\u7a0b\u540c\u6837\u4e0d\u5b89\u5168\u3002