go-cvss パッケージ v1.5.0 をリリースした
バグ報告が止まらない。 ごめんなさい ごめんなさい ごめんなさい…
ということで github.com/goark/go-cvss
パッケージの v1.5.0 をリリースした。
このバージョンで CVSSv2 のデコードを行うサブパッケージを v2/base
から v2/metric
に移行した。
こんな感じ。
//go:build run
// +build run
package main
import (
"fmt"
"os"
"github.com/goark/go-cvss/v2/metric"
)
func main() {
bm, err := metric.NewBase().Decode("AV:N/AC:L/Au:N/C:N/I:N/A:C") //CVE-2002-0392
if err != nil {
fmt.Fprintln(os.Stderr, err)
return
}
fmt.Printf("Severity: %v (%v)\n", bm.Severity(), bm.Score())
// Output:
// Severity: Severity: High (7.8)
}
これに伴い v2/base
パッケージ以下の型定義およびメソッドには Deprecated
マークを付けている。
一連の変更でようやく CVSSv2 処理系は v3/metric
パッケージと互換になった。
まぁ今どき CVSSv2 を使うことはないと思うけどね。
そもそも github.com/goark/go-cvss
パッケージ自体がかなり試行錯誤していて,随分とカオスな状態になっていたので,この機会に整理できてよかった。
もうバグはないよなぁ。
ないと思いたい。
2022-01-31 追記
その後のバグ報告で,上述の Deprecated
マークを付けた v2/base
パッケージはデータ構造上 CVSSv2 の仕様を満たせないことが分かったので v1.6.0 で drop した。
とほほ orz
ブックマーク
参考図書
- プログラミング言語Go (ADDISON-WESLEY PROFESSIONAL COMPUTING SERIES)
- Alan A.A. Donovan (著), Brian W. Kernighan (著), 柴田 芳樹 (翻訳)
- 丸善出版 2016-06-20
- 単行本(ソフトカバー)
- 4621300253 (ASIN), 9784621300251 (EAN), 4621300253 (ISBN), 9784621300251 (ISBN)
- 評価
著者のひとりは(あの「バイブル」とも呼ばれる)通称 “K&R” の K のほうである。この本は Go 言語の教科書と言ってもいいだろう。
- 初めてのGo言語 ―他言語プログラマーのためのイディオマティックGo実践ガイド
- Jon Bodner (著), 武舎 広幸 (翻訳)
- オライリージャパン 2022-09-26
- 単行本(ソフトカバー)
- 4814400047 (ASIN), 9784814400041 (EAN), 4814400047 (ISBN)
- 評価
2021年に出た “Learning Go” の邦訳版。私は版元で PDF 版を購入。 Go 特有の語法(idiom)を切り口として Go の機能やパッケージを解説している。 Go 1.19 対応。
- 実用 Go言語 ―システム開発の現場で知っておきたいアドバイス
- 渋川 よしき (著), 辻 大志郎 (著), 真野 隼記 (著)
- オライリージャパン 2022-04-22
- 単行本(ソフトカバー)
- 4873119693 (ASIN), 9784873119694 (EAN), 4873119693 (ISBN)
- 評価
版元のデジタル版を購入。 Go で躓きやすい点を解説していくのが最初の動機らしい。「◯◯するには」を調べる際にこの本を調べるといいかも。