Vine Linux バグトラッキングシステム

課題の詳細を表示 コメントにジャンプ ] 課題の履歴 ] 印刷 ]
IDプロジェクトカテゴリ登録日最終更新
0000686Vine Linux1 バグ2009-04-18 11:242009-05-05 04:11
報告者anonymous 
担当者 
優先度再現性不明 
状態完了解決状況不明 
バージョンVineSeed 
修正予定バージョン修正済バージョン 
概要0000686: radvdのlog.cでsegfault
説明radvd-1.0-2vl5のlog.cにおいて、
特定の条件下でva_listを複数回使用することがあり、
segfaultを引き起こします。

upstreamは未確認、以下修正例

--- rpm/BUILD/radvd-1.0/log.c 2006-10-09 15:15:32.000000000 +0900
+++ log.c 2009-04-18 11:08:40.000000000 +0900
@@ -72,15 +72,15 @@
        struct tm *tm;
        time_t current;

+ vsnprintf(buff, sizeof(buff), format, ap );
+
        switch (log_method) {
                case L_NONE:
                        break;
                case L_SYSLOG:
- vsnprintf(buff, sizeof(buff), format, ap);
                        syslog(prio, "%s", buff);
                        break;
                case L_STDERR_SYSLOG:
- vsnprintf(buff, sizeof(buff), format, ap);
                        syslog(prio, "%s", buff);
                        if (prio > LOG_ERR) /* fall through for messages with high priority */
                                break;
@@ -89,9 +89,7 @@
                        tm = localtime(&current);
                        (void) strftime(tstamp, sizeof(tstamp), LOG_TIME_FORMAT, tm);

- fprintf(stderr, "[%s] %s: ", tstamp, log_ident);
- vfprintf(stderr, format, ap);
- fputs("\n", stderr);
+ fprintf(stderr, "[%s] %s: %s\n", tstamp, log_ident, buff);
                        fflush(stderr);
                        break;
                case L_LOGFILE:
@@ -99,9 +97,7 @@
                        tm = localtime(&current);
                        (void) strftime(tstamp, sizeof(tstamp), LOG_TIME_FORMAT, tm);

- fprintf(log_file_fd, "[%s] %s: ", tstamp, log_ident);
- vfprintf(log_file_fd, format, ap);
- fputs("\n", log_file_fd);
+ fprintf(log_file_fd, "[%s] %s: %s\n", tstamp, log_ident, buff);
                        fflush(log_file_fd);
                        break;
                default:
タグ設定されていません。
archx86, x86_64
パッケージradvd-1.0-2vl5
添付ファイル

- 関連

-  コメント
(0003085)
daisuke (管理者)
2009-05-05 04:11

> radvd-1.0-2vl5のlog.cにおいて、
> 特定の条件下でva_listを複数回使用することがあり、
> segfaultを引き起こします。
>
> upstreamは未確認、以下修正例

radvd-1.1-1 で upstream version 1.1 に更新しました。
この件の修正は upstream で同じ修正が行われていましたので、
完了とします。

- 課題の履歴
変更日 ユーザー名 項目 変更内容
2009-04-18 11:24 anonymous 新規課題
2009-05-05 04:11 daisuke 状態 新規 => 完了
2009-05-05 04:11 daisuke コメント追加: 0003085


Copyright © 2000 - 2024 MantisBT Team
Copyright © 2012 - 2024 Project Vine
Powered by Mantis Bugtracker