diff --git a/zh_CN.GB2312/books/porters-handbook/Makefile b/zh_CN.GB2312/books/porters-handbook/Makefile
index 33ac3f1306..9eccfb3749 100644
--- a/zh_CN.GB2312/books/porters-handbook/Makefile
+++ b/zh_CN.GB2312/books/porters-handbook/Makefile
@@ -1,7 +1,8 @@
#
# The FreeBSD Simplified Chinese Project
#
-# Original Revision: 1.7
+# Original Revision: 1.9
+#
# $FreeBSD$
#
# Build the FreeBSD Porter's Handbook.
@@ -39,6 +40,17 @@ IMAGES_LIB+= callouts/7.png
IMAGES_LIB+= callouts/8.png
IMAGES_LIB+= callouts/9.png
IMAGES_LIB+= callouts/10.png
+IMAGES_LIB+= callouts/11.png
+IMAGES_LIB+= callouts/12.png
+IMAGES_LIB+= callouts/13.png
+IMAGES_LIB+= callouts/14.png
+IMAGES_LIB+= callouts/15.png
+IMAGES_LIB+= callouts/16.png
+IMAGES_LIB+= callouts/17.png
+IMAGES_LIB+= callouts/18.png
+IMAGES_LIB+= callouts/19.png
+IMAGES_LIB+= callouts/20.png
+IMAGES_LIB+= callouts/21.png
URL_RELPREFIX?= ../../../..
DOC_PREFIX?= ${.CURDIR}/../../..
diff --git a/zh_CN.GB2312/books/porters-handbook/book.sgml b/zh_CN.GB2312/books/porters-handbook/book.sgml
index e6ead99581..642e327440 100644
--- a/zh_CN.GB2312/books/porters-handbook/book.sgml
+++ b/zh_CN.GB2312/books/porters-handbook/book.sgml
@@ -2,7 +2,7 @@
The FreeBSD Documentation Project
The FreeBSD Simplified Chinese Project
- Original Revision: 1.1092
+ Original Revision: 1.1117
$FreeBSD$
-->
@@ -33,6 +33,7 @@
2008
2009
2010
+ 2011
The FreeBSD Documentation
Project
@@ -51,6 +52,7 @@
2008
2009
2010
+ 2011
&cnproj.freebsd.org;
@@ -1058,15 +1060,24 @@ PORTEPOCH= 1
LATEST_LINK
+ LATEST_LINK 在编译包的过程中用于确定可以为
+ pkg_add -r 使用的缩短的名字。 举例来说,
+ 在安装最新版本的 perl 的时候, 只需指定
+ pkg_add -r perl 而无需知道具体的版本号。
+ 这个名字应该是独一无二的, 并且对用户而言应该是显而易见的名字。
+
有时, 在 ports 套件中可能会存在同一程序的多个版本。
索引和预编译包的联编系统都需要能够将它们视为不同的软件包, 尽管其
PORTNAME、 PKGNAMEPREFIX, 以及
even PKGNAMESUFFIX 可能是一模一样的。 遇到这种情况时,
就需要将除了 主
port 之外的其他 port
中的 LATEST_LINK 变量设为不同的值
- — 请参见 editors/vim5 和
- editors/vim port, 以及
+ — 请参见 lang/gcc46 和
+ lang/gcc port, 以及
www/apache* 系列, 以了解它的用法。
+ 如果设置了 NO_LATEST_LINK,
+ 则系统便不会生成对应的连接, 对于非
+ 主
port 来说是一个可行的选择。
需要注意的是, 如何确定 主
版本 —
最流行
、 受支持最好
,
变动最少
, 等等 — 已经超过了本书能够给出的建议范围;
@@ -1167,13 +1178,15 @@ PORTEPOCH= 1
这个方法是为了更容易得凭版本号来排序 port。
特别注意的是, 确保版本号之间的每部分都由小数点来分隔,
如果日期也是版本号的一部分, 就用这样的格式,
- yyyy.mm.dd
- 或者
- dd.mm.yyyy
+ 0.0.yyyy.mm.dd
这样的格式, 而非
- yy.mm.dd,
- 因为后者不适合表示千年的格式。
-
+ dd.mm.yyyy
+ 甚至
+ yy.mm.dd
+ 这种不适合表示千年的格式。 在版本号上使用
+ 0.0. 前缀十分重要, 因为当软件发行正式的版本时,
+ 其版本号数字很可能会小于表示年份的
+ yyyy 数字。
@@ -1315,7 +1328,7 @@ PORTEPOCH= 1
就应把版本号设成 1.0 (就像前面
piewm 的例子那样)。 否则,
要求原始的作者加上版本号或使用日期
- (yyyy.mm.dd)
+ (0.0.yyyy.mm.dd)
来作为版本号。
@@ -1659,7 +1672,7 @@ PORTEPOCH= 1
- mbone
+ mbone*
MBone 应用程序。
@@ -1978,7 +1991,7 @@ PORTEPOCH= 1
editors, 而不是其它的什么。 同样地,
您不应该列出 net, 如果 port 属于
irc、 mail、
- mbone、 news、
+ news、
security, 或是 www,
因为 net 可以表示它们的超集。
@@ -3151,7 +3164,7 @@ ALWAYS_KEEP_DISTFILES= yes
Makefile 中的 COMMENT 变量应该紧接着 MAINTAINER
变量出现。
- 请务必将 COMMENT 这行限制在 60 个字符之内,
+ 请务必将 COMMENT 这行限制在不超过 70 个字符之内,
因为这行内容会成为 &man.pkg.info.1;
呈现给用户的 port 的一句话简介。
@@ -4313,7 +4326,7 @@ PORTVERSION= 1.0
来避免 (参见 lang/moscow_ml
给出的例子), 或者用一个 shell 封装程序来在执行可执行文件之前设置
LD_LIBRARY_PATH, 类似
- www/mozilla 那样。
+ www/seamonkey 那样。
当在 64-位系统上安装 32-位 的函数库时, 请使用
USE_LDCONFIG32。
@@ -4466,7 +4479,7 @@ PORTVERSION= 1.0
USE_GMAKE=yes。
- 用于与 gmake 有关的 port 的变量
+ 与 gmake 有关的 port 变量
@@ -4545,7 +4558,7 @@ PORTVERSION= 1.0
- 用于用到了 configure 脚本的 port 的变量
+ 用于用到了 configure 脚本的 port 的变量
@@ -5865,8 +5878,8 @@ QT_COMPONENTS= qmake_build moc_build rcc_build uic_build
JAVA_VERSION
用空格分开的适合 port 使用的 Java 版本。
可选的 "+" 可以用于指定某个范围的版本 (可以用:
- 1.1[+] 1.2[+] 1.3[+] 1.4[+] 1.5[+]
- 1.6[+])。
+ 1.5[+] 1.6[+] 1.7[+]
+ )。
@@ -5878,8 +5891,8 @@ QT_COMPONENTS= qmake_build moc_build rcc_build uic_build
JAVA_VENDOR
用空格分开的适应 port 的 JDK port 供应商
- (可以用: freebsd bsdjava sun ibm
- blackdown)。
+ (可以用: freebsd bsdjava sun
+ openjdk)。
@@ -5896,22 +5909,6 @@ QT_COMPONENTS= qmake_build moc_build rcc_build uic_build
JAVA_EXTRACT
设置这个变量表示所选的 JDK port 应被列入 port 的解压缩支持依赖关系。
-
-
- USE_JIKES
- port 是否应使用
- jikes bytecode 编译器进行联编。
- 如果没有设置, 则 port 将在
- jikes 可用的情况下在联编时使用它。
- 您也可以明确地禁止使用或要求使用
- jikes (通过将这个变量设置为 'no'
- 或 'yes')。 后一种情形中, devel/jikes 将加入 port 的联编依赖关系。
- 任何情况下, 如果 jikes
- 被作为 javac 使用, 则
- bsd.java.mk 会定义
- HAVE_JIKES 变量。
-
@@ -5933,32 +5930,32 @@ QT_COMPONENTS= qmake_build moc_build rcc_build uic_build
JAVA_PORT
JDK port 的名字 (例如
- 'java/jdk14')。
+ 'java/diablo-jdk16')。
JAVA_PORT_VERSION
JDK port 的完整版本 (例如
- '1.4.2')。 如果您只需要版本号的前两位, 则可用
+ '1.6.0')。 如果您只需要版本号的前两位, 则可用
${JAVA_PORT_VERSION:C/^([0-9])\.([0-9])(.*)$/\1.\2/}。
JAVA_PORT_OS
所用 JDK port 的操作系统 (例如
- 'linux')。
+ 'native')。
JAVA_PORT_VENDOR
所用 JDK port 的供应商 (例如
- 'sun')。
+ 'freebsd')。
JAVA_PORT_OS_DESCRIPTION
所用 JDK port 操作系统的描述
- (例如 'Linux')。
+ (例如 'Native')。
@@ -5970,34 +5967,34 @@ QT_COMPONENTS= qmake_build moc_build rcc_build uic_build
JAVA_HOME
JDK 的安装目录 (例如
- '/usr/local/jdk1.3.1')。
+ '/usr/local/diablo-jdk1.6.0')。
JAVAC
所用 Java 编译器的完整路径 (例如
- '/usr/local/jdk1.3.1/bin/javac' 或
- '/usr/local/bin/jikes')。
+ '/usr/local/diablo-jdk1.6.0/bin/javac')。
+
JAR
所用 jar 工具的完整路径 (例如
- '/usr/local/jdk1.3.1/bin/jar' 或
+ '/usr/local/diablo-jdk1.6.0/bin/jar' 或
'/usr/local/bin/fastjar')。
APPLETVIEWER
所用 appletviewer 工具的完整路径 (例如
- '/usr/local/linux-jdk1.3.1/bin/appletviewer')。
+ '/usr/local/diablo-jdk1.6.0/bin/appletviewer')。
JAVA
所用 java 执行文件的完整路径。
您应使用它来执行 Java 程序 (例如
- '/usr/local/jdk1.3.1/bin/java')。
+ '/usr/local/diablo-jdk1.6.0/bin/java')。
@@ -6057,12 +6054,6 @@ QT_COMPONENTS= qmake_build moc_build rcc_build uic_build
所用 JDK 类文件目录的完整路径。
${JAVA_HOME}/jre/lib/rt.jar。
-
-
- HAVE_JIKES
- 随 jikes 是否将被应用于 port
- 的联编过程而定 (参见前述 USE_JIKES)。
-
@@ -6124,10 +6115,6 @@ QT_COMPONENTS= qmake_build moc_build rcc_build uic_build
的设置执行 Ant。 这类似于 中介绍的关于
USE_GMAKE 的机制。
- 若 jikes 被作为
- javac 使用 (参见 中的
- USE_JIKES), 则 Ant 会自动将其用于 port 的联编过程。
-
@@ -8154,6 +8141,86 @@ CFLAGS+= -DLUA_VERSION_STRING="${VER_STR}"
USE_XFCE= mcsmanager configenv
+
+ 使用 Mozilla
+
+
+ 用到 Mozilla 的 port 使用的变量
+
+
+
+
+
+ USE_GECKO
+
+ port 支持的 Gecko 后端。 可选值:
+ libxul (libxul.so)、
+ seamonkey (libgtkembedmoz.so,
+ 过时, 新 port 应避免使用)。
+
+
+ USE_FIREFOX
+
+ port 需要使用 Firefox 作为运行环境依赖。
+ 可选值:
+ yes (使用默认版本)、
+ 40、 36、
+ 35。
+ 默认的依赖采用的是版本
+ 40。
+
+
+ USE_FIREFOX_BUILD
+
+ port 需要使用 Firefox 作为联编环境依赖。
+ 可选值: 参见 USE_FIREFOX。
+ 这个变量会自动设置 USE_FIREFOX 使用相同的值。
+
+
+ USE_SEAMONKEY
+
+ port 需要使用 SeaMonkey 作为运行环境依赖。
+ 可选值:
+ yes (使用默认版本)、
+ 20、 11
+ (过时, 新 port 应避免使用)。
+ 默认的依赖采用的是版本
+ 20。
+
+
+ USE_SEAMONKEY_BUILD
+
+ port 需要使用 SeaMonkey 作为联编环境依赖。
+ 可选值: 参见 USE_SEAMONKEY。
+ 这个变量会自动设置 USE_SEAMONKEY 使用相同的值。
+
+
+ USE_THUNDERBIRD
+
+ port 需要使用 Thunderbird 作为运行环境依赖。
+ 可选值:
+ yes (使用默认版本)、
+ 31、 30
+ (过时, 新 port 应避免使用)。
+ 默认的依赖采用的是版本
+ 31。
+
+
+ USE_THUNDERBIRD_BUILD
+
+ port 需要使用 Thunderbird 作为联编环境依赖。
+ 可选值: 参见 USE_THUNDERBIRD。
+ 这个变量会自动设置 USE_THUNDERBIRD 使用相同的值。
+
+
+
+
+
+ 可用变量的完整列表, 请参阅
+ /usr/ports/Mk/bsd.gecko.mk。
+
+
+
使用数据库
@@ -8175,8 +8242,8 @@ CFLAGS+= -DLUA_VERSION_STRING="${VER_STR}"
如果这个变量为 yes,
则把 databases/db41
- 列为依赖关系。 这个变量还可以被设置成的值有: 2,3,40,41,
- 42,43,45,46 或者 47。你可以声明可接受值的范围,
+ 列为依赖关系。 这个变量还可以被设置成的值有: 40,41,
+ 42、 43、 44、 46、 47、 48 或 51。 您可以声明可接受值的范围,
USE_BDB=42+ 将寻找已安装的最高版本,
如果没有找到则退回到 42。
@@ -8185,9 +8252,9 @@ CFLAGS+= -DLUA_VERSION_STRING="${VER_STR}"
USE_MYSQL
如果这个变量为 yes,
- 则把 databases/mysql50-server
+ 则把 databases/mysql55-server
列为依赖关系。还有一个相关的变量,WANT_MYSQL_VER,
- 可以设置的值有 323,40,41,50,51 或者 60。
+ 可以设置的值有 323,40,41,50,51, 52, 55 或者 60。
@@ -8196,13 +8263,17 @@ CFLAGS+= -DLUA_VERSION_STRING="${VER_STR}"
如果设置成 yes,则把
databases/postgresql82
列为依赖关系。还有一个相关的变量,WANT_PGSQL_VER,
- 可以设置的值有 73,74,80,81,82 或 83。
+ 可以设置的值有 73,74,80,81,82, 83 或 90。
+ 更多详情请参阅
+
+ bsd.database.mk。
+
@@ -8349,9 +8420,7 @@ GROUPS= pulse pulse-access pulse-rt
某些 ports (例如可加载式内核模块) 需要内核的源文件才能编译。
下面是检测用户是否安装了源代码的例子:
- SRC_BASE?= /usr/src
-
-.if !exists(${SRC_BASE}/sys/Makefile)
+ .if !exists(${SRC_BASE}/sys/Makefile)
IGNORE= requires kernel sources to be installed
.endif
@@ -8568,13 +8637,13 @@ etc/orbit.conf.sample
接下来, 建立一个用于安装您的 port 的临时目录,
并在其中安装它所依赖的所有其他软件包:
- &prompt.root; mkdir /var/tmp/$(make -V PORTNAME)
-&prompt.root; mtree -U -f $(make -V MTREE_FILE) -d -e -p /var/tmp/$(make -V PORTNAME)
-&prompt.root; make depends PREFIX=/var/tmp/$(make -V PORTNAME)
+ &prompt.root; mkdir /var/tmp/`make -V PORTNAME`
+&prompt.root; mtree -U -f `make -V MTREE_FILE` -d -e -p /var/tmp/`make -V PORTNAME`
+&prompt.root; make depends PREFIX=/var/tmp/`make -V PORTNAME`
将目录结构保存到一新文件中。
- &prompt.root; (cd /var/tmp/$(make -V PORTNAME) && find -d * -type d) | sort > OLD-DIRS
+ &prompt.root; (cd /var/tmp/`make -V PORTNAME` && find -d * -type d) | sort > OLD-DIRS
建立一空白 pkg-plist 文件:
@@ -8583,12 +8652,12 @@ etc/orbit.conf.sample
如果您的 port 遵循 PREFIX (应该如此)
则接下来应安装该 port 并创建装箱单。
- &prompt.root; make install PREFIX=/var/tmp/$(make -V PORTNAME)
-&prompt.root; (cd /var/tmp/$(make -V PORTNAME) && find -d * \! -type d) | sort > pkg-plist
+ &prompt.root; make install PREFIX=/var/tmp/`make -V PORTNAME`
+&prompt.root; (cd /var/tmp/`make -V PORTNAME` && find -d * \! -type d) | sort > pkg-plist
此外还应把新建立的目录加入装箱单。
- &prompt.root; (cd /var/tmp/$(make -V PORTNAME) && find -d * -type d) | sort | comm -13 OLD-DIRS - | sort -r | sed -e 's#^#@dirrm #' >> pkg-plist
+ &prompt.root; (cd /var/tmp/`make -V PORTNAME` && find -d * -type d) | sort | comm -13 OLD-DIRS - | sort -r | sed -e 's#^#@dirrm #' >> pkg-plist
最后需要手工整理 packing list; 这一过程不是
完全 自动的。 联机手册应列入 port
@@ -8615,12 +8684,12 @@ etc/orbit.conf.sample
make depends。 然后联编和安装
port:
- &prompt.root; make install PREFIX=/var/tmp/$(make -V PORTNAME)
+ &prompt.root; make install PREFIX=/var/tmp/`make -V PORTNAME`
然后让 plist 生成
pkg-plist 文件:
- &prompt.root; /usr/ports/Tools/scripts/plist -Md -m $(make -V MTREE_FILE) /var/tmp/$(make -V PORTNAME) > pkg-plist
+ &prompt.root; /usr/ports/Tools/scripts/plist -Md -m `make -V MTREE_FILE` /var/tmp/`make -V PORTNAME` > pkg-plist
与前面类似, 如此生成的装箱单也需要手工进行一些清理工作。
@@ -8949,7 +9018,7 @@ as .putsy.conf and edit it.
/usr/local 而不是正确的 PREFIX
中安装文件。 简单的测试方法是:
- &prompt.root; make clean; make package PREFIX=/var/tmp/$(make -V PORTNAME)
+ &prompt.root; make clean; make package PREFIX=/var/tmp/`make -V PORTNAME`
如果有文件安装到了 PREFIX 以外的地方,
打包过程将抱怨找不到这些文件。
@@ -8957,7 +9026,7 @@ as .putsy.conf and edit it.
这一步骤并不能帮助发现内部引用, 或纠正在引用其它 port
中的文件时使用的 LOCALBASE。 您需要在
- /var/tmp/$(make -V PORTNAME)
+ /var/tmp/`make -V PORTNAME`
中测试安装好的软件, 才能够达到这样的目的。
您可以在自己的 Makefile 中改变
@@ -9040,7 +9109,8 @@ as .putsy.conf and edit it.
&prompt.user; /usr/bin/diff something.orig something > something.diff
- 还有一种办法是将目录整个复制到另一个目录,
+ 如果不是这样的话, 则您应使用 cvs diff
+ 的方法 (), 或将目录整个复制到另一个目录,
并使用 &man.diff.1; 比较两个目录时在目录中递归产生的输出结果
(例如, 如果您修改后的 port 目录的名字是
superedit 而原始文件的目录是
@@ -9097,6 +9167,121 @@ as .putsy.conf and edit it.
现在您已经了解了所需的所有操作, 您可能会像要阅读在
中关于如何保持最新的描述。
+
+ 使用 CVS 制作补丁
+
+ 如果可能的话, 请提交&man.cvs.1; diff;
+ 这种情形要比直接比较 新、旧
目录要容易处理。
+ 此外, 这种方法也让您更容易看出到底改了什么,
+ 并在其他人更新了 Ports Collection 时容易合并这些改动,
+ 在提交之前, 这可以减少维护补丁所需的工作。
+
+ &prompt.user; cd ~/my_wrkdir
+&prompt.user; cvs -d R_CVSROOT co pdnsd
+&prompt.user; cd ~/my_wrkdir/pdnsd
+
+
+
+ 当然, 这可以是您指定的任意目录;
+ 联编 port 并不局限于
+ /usr/ports/
+ 的子目录。
+
+
+
+ R_CVSROOT 是任何一个公共的 cvs 镜像服务器, 您可以在 &os; 使用手册
+ 中挑选一个。
+
+
+
+ pdnsd 是 port 的模块名字; 通常说来它和 port 的名字一样,
+ 不过也有些例外, 特别是那些本地化类别 (german/selfhtml
+ 对应的模块名字是 de-selfhtml); 您可以通过 cvsweb 界面
+ 查询, 或者也可以指定完整路径, 例如在我们这个例子中是
+ ports/dns/pdnsd。
+
+
+
+ 在工作目录中, 您可以像往常一样进行任何更改。
+ 如果您添加或删除了文件, 则需要告诉
+ cvs 来追踪这些改动:
+
+ &prompt.user; cvs add new_file
+&prompt.user; cvs remove deleted_file
+
+ 请反复检查 列出的事项并使用
+ 进行检查。
+
+ &prompt.user; cvs status
+&prompt.user; cvs update
+
+
+
+ 这会合并 CVS 中其他人做的改动和您的补丁;
+ 在这个过程中, 您需要仔细观察输出。
+ 文件名前面的那个字母会显示做了什么, 请参阅
+ 中给出的说明。
+
+
+
+
+ cvs update 文件名前字母前缀的含义
+
+
+
+
+ U
+
+ 文件更新无误。
+
+
+
+ P
+
+ 文件更新无误 (通常只有在使用远程代码库时才会看到)。
+
+
+
+ M
+
+ 文件有本地修改, 并合并成功而未产生任何冲突。
+
+
+
+ C
+
+ 文件有本地修改, 进行了合并并产生了冲突。
+
+
+
+
+
+ 如果您在执行
+ cvs update 时某些文件出现了 C,
+ 则说明有其他人在 CVS 中做了修改, 而 &man.cvs.1; 无法将这些改动与您本地的改动进行合并。
+ 不过, 无论如何, 最好都检查一下合并的结果,
+ 因为 cvs 并不知道 port 应该是什么样子,
+ 因此它所做的合并无论是否产生了冲突,
+ 都有可能 (并且并不罕见) 产生没有意义的结果。
+
+ 最后一步是以 CVS 中的文件为基础生成 unified &man.diff.1;:
+
+ &prompt.user; cvs diff -uN > ../`basename ${PWD}`.diff
+
+
+ 指定 十分重要,
+ 因为它确保了添加或删除的文件也出现在补丁中。
+ 补丁将包含删除的文件, 在打上补丁时,
+ 这些文件会被清空, 所以最好在 PR 中提醒 committer
+ 删除它们。
+
+
+ 根据 的指导提交您的补丁。
+
+
UPDATING 和 MOVED 文件
@@ -9206,13 +9391,13 @@ as .putsy.conf and edit it.
如果您是 committer, 则可以自行更新 VuXML 数据库。
这样, 您就能够同时帮助安全官团队,
并尽早将至关重要的信息传达给用户群体。 然而, 如果您不是 committer,
- 或者您相信自己发现了一个异常严重的漏洞, 或者由于其它情况,
- 请不要由于按照 FreeBSD
安全信息 页面上的方法联系安全官团队。
- 现在您选择了一条艰难的路。 正如其名称所暗示的那样, VuXML
- 数据库本质上是一个 XML 文档。 其源文件 vuln.xml
+ 正如其名称所暗示的那样, VuXML
+ 数据库是一个 XML 文档。 其源文件 vuln.xml
被保存在 security/vuxml port 的目录中。
所以, 它的全名是
@@ -9296,11 +9481,7 @@ as .putsy.conf and edit it.
用于为此记录 (它包含的部分) 指定一个全局唯一标识符 (UUID)。
您应为每一个新的 vuXML 生成新的 UUID (而且别忘了要把模板中的
UUID 换成新的, 如果您不是从头开始的话)。 您可以使用 &man.uuidgen.1;
- 来生成 VuXML UUID; 另外, 如果您使用的是 FreeBSD 4.x
- 版本, 也可以用 devel/p5-Data-UUID 并执行:
-
- perl -MData::UUID -le 'print lc new Data::UUID->create_str'
+ 来生成 VuXML UUID。
@@ -9482,9 +9663,29 @@ as .putsy.conf and edit it.
package clamav 的问题描述, 并且,
已经知道 0.65_7 版本修正了这个问题。
- 您需要做的准备工作, 是安装一个新版本的
- ports ports-mgmt/portaudit 程序以及
- ports-mgmt/portaudit-db。
+ 您需要做的准备工作, 是 安装 一个新版本的
+ ports ports-mgmt/portaudit 程序、
+ ports-mgmt/portaudit-db, 以及
+ security/vuxml。
+
+
+ 要运行 packaudit,
+ 您必须拥有其
+ DATABASEDIR,
+ 通常是 /var/db/portaudit
+ 的写入权限。
+
+ 您可以通过
+ DATABASEDIR
+ 环境变量来指定一个不同的位置。
+
+ 如果您的工作目录是
+ ${PORTSDIR}/security/vuxml
+ 以外的其它地方, 则应使用环境变量
+ VUXMLDIR
+ 来指明
+ vuln.xml 的位置。
+
首先, 检查一下是否已经有了关于这个漏洞的描述。
如果已经有过这样的记录, 那么它将匹配较早版本的 package,
@@ -9493,12 +9694,6 @@ as .putsy.conf and edit it.
&prompt.user; packaudit
&prompt.user; portaudit clamav-0.65_6
-
- 要运行 packaudit, 您必须拥有写入
- DATABASEDIR 目录,
- 通常是 /var/db/portaudit 的权限。
-
-
如果什么都没有发现, 您就可以考虑写一个新的记录来描述这个漏洞了。
现在可以生成一个新的 UUID (假设它是
74a9541d-5d6c-11d8-80e3-0020ed76ef5a),
@@ -12537,7 +12732,8 @@ Reference: <http://www.freebsd.org/ports/portaudit/74a9541d-5d6c-11d8-80e3-00
800038
May 26, 2008
删去了 netatm 和
- ISDN4BSD 后的 8.0-CURRENT。
+ ISDN4BSD 后的 8.0-CURRENT。 这个版本也表示增加了
+ Compact C Type (CTF) 工具。
800039
@@ -13018,6 +13214,57 @@ Reference: <http://www.freebsd.org/ports/portaudit/74a9541d-5d6c-11d8-80e3-00
December 22, 2010
8.2-RELEASE 之后的 8.2-STABLE。
+
+ 802501
+ February 28, 2011
+ 合并了 DTrace 变动, 包含用户态跟踪支持之后的 8.2-STABLE。
+
+
+ 802502
+ March 6, 2011
+ 在 libm 中合并了 log2 和 log2f 之后的 8.2-STABLE。
+
+
+ 802503
+ May 1, 2011
+ 将 gcc 升级至 FSF gcc-4_2-branch 最后一个
+ GPLv2 版本之后的 8.2-STABLE。
+
+
+ 802504
+ May 28, 2011
+ 引入模块化拥塞控制支持基础设施和 KPI 之后的 8.2-STABLE。
+
+
+ 802505
+ May 28, 2011
+ 引入了 Hhook 和 Khelp KPI 之后的 8.2-STABLE。
+
+
+ 802506
+ May 28, 2011
+ 在 tcpcb 结构中增加 OSD 之后的 8.2-STABLE。
+
+
+ 802507
+ June 6, 2011
+ 引入 ZFS v28 之后的 8.2-STABLE。
+
+
+ 802508
+ June 8, 2011
+ 删去了 sv_schedtail struct sysvec 方法之后的 8.2-STABLE。
+
+
+ 802509
+ July 14, 2011
+ 在 binutils 中合并了 SSE3 支持之后的 8.2-STABLE。
+
+
+ 802510
+ July 19, 2011
+ 为 rfork(2) 添加了 RFTSIGZMB 标志之后的 8.2-STABLE。
+
900000
August 22, 2009
@@ -13178,6 +13425,76 @@ Reference: <http://www.freebsd.org/ports/portaudit/74a9541d-5d6c-11d8-80e3-00
December 5, 2010
在 libm 中增加 log2 之后的 9.0-CURRENT。
+
+ 900028
+ December 21, 2010
+ 添加了 Hhook (Helper
+ Hook)、 Khelp (Kernel Helpers) 和 Object Specific Data
+ (OSD) KPI 之后的 9.0-CURRENT。
+
+
+ 900029
+ December 28, 2010
+ 修改 TCP 协议栈使其允许 Khelp 模块通过 helper hook 指针,
+ 与 TCP 控制块交互并保存连接数据之后的 9.0-CURRENT。
+
+
+ 900030
+ January 12, 2011
+ 将 libdialog 更新至版本 20100428 之后的 9.0-CURRENT。
+
+
+ 900031
+ February 7, 2011
+ 添加了 pthread_getthreadid_np(3) 之后的 9.0-CURRENT。
+
+
+ 900032
+ February 8, 2011
+ 删除了 uio_yield 函数原型和符号之后的 9.0-CURRENT。
+
+
+ 900033
+ February 18, 2011
+ 将 binutils 更新至 2.17.50 之后的 9.0-CURRENT。
+
+ 900034
+ March 8, 2011
+ 修改了 struct sysvec (sv_schedtail) 之后的 9.0-CURRENT。
+
+
+ 900035
+ March 29, 2011
+ 将基本系统中 gcc 和
+ libstdc++ 升级至最后的 GPLv2 授权版本之后的 9.0-CURRENT。
+
+
+ 900036
+ April 18, 2011
+ 在基本系统中删去了 libobjc 和 Objective-C 支持之后的 9.0-CURRENT。
+
+
+ 900037
+ May 13, 2011
+ 在基本系统中引入了 libprocstat(3)
+ 函数库以及 fuser(1) 工具之后的 9.0-CURRENT。
+
+
+ 900038
+ May 22, 2011
+ 为 VFS_FHTOVP(9) 添加锁标志参数之后的 9.0-CURRENT。
+
+
+ 900039
+ June 28, 2011
+ 引入了来自 OpenBSD 4.5 的 pf 之后的 9.0-CURRENT。
+
+
+ 900041
+ August 13, 2011
+ 实现了 Capsicum
+ capabilities 之后的 9.0-CURRENT。 fget(9) 新增了权限参数。
+