go-cvss パッケージ v1.5.0 をリリースした

no extension

バグ報告が止まらない。 ごめんなさい ごめんなさい ごめんなさい…

ということで 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

ブックマーク

参考図書

photo
プログラミング言語Go
アラン・ドノバン (著), ブライアン・カーニハン (著), 柴田芳樹 (著)
丸善出版 2016-06-20 (Release 2021-07-13)
Kindle版
B099928SJD (ASIN)
評価     

Kindle 版出た! 一部内容が古びてしまったが,この本は Go 言語の教科書と言ってもいいだろう。感想はこちら

reviewed by Spiegel on 2021-05-22 (powered by PA-APIv5)

photo
初めてのGo言語 ―他言語プログラマーのためのイディオマティックGo実践ガイド
Jon Bodner (著), 武舎 広幸 (翻訳)
オライリージャパン 2022-09-26
単行本(ソフトカバー)
4814400047 (ASIN), 9784814400041 (EAN), 4814400047 (ISBN)
評価     

2021年に出た “Learning Go” の邦訳版。私は版元で PDF 版を購入。 Go 特有の語法(idiom)を切り口として Go の機能やパッケージを解説している。 Go 1.19 対応。

reviewed by Spiegel on 2022-10-11 (powered by PA-APIv5)

photo
実用 Go言語 ―システム開発の現場で知っておきたいアドバイス
渋川 よしき (著), 辻 大志郎 (著), 真野 隼記 (著)
オライリージャパン 2022-04-22
単行本(ソフトカバー)
4873119693 (ASIN), 9784873119694 (EAN), 4873119693 (ISBN)
評価     

版元のデジタル版を購入。 Go で躓きやすい点を解説していくのが最初の動機らしい。「◯◯するには」を調べる際にこの本を調べるといいかも。

reviewed by Spiegel on 2022-10-26 (powered by PA-APIv5)