From 33b8feb350557ebefb72d3f7f31386d0acda75c1 Mon Sep 17 00:00:00 2001 From: guoguangwu Date: Mon, 29 May 2023 16:06:20 +0800 Subject: [PATCH 1/2] fix: CVE-2022-28948 --- go.mod | 2 +- go.sum | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/go.mod b/go.mod index c1d86d3..1394bdc 100644 --- a/go.mod +++ b/go.mod @@ -7,5 +7,5 @@ require github.com/stretchr/testify v1.7.1 require ( github.com/davecgh/go-spew v1.1.0 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect - gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c // indirect + gopkg.in/yaml.v3 v3.0.0-20220521103104-8f96da9f5d5e // indirect ) diff --git a/go.sum b/go.sum index 2dca7c9..d28e008 100644 --- a/go.sum +++ b/go.sum @@ -7,5 +7,6 @@ github.com/stretchr/testify v1.7.1 h1:5TQK59W5E3v0r2duFAb7P95B6hEeOyEnHRa8MjYSMT github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c h1:dUUwHk2QECo/6vqA44rthZ8ie2QXMNeKRTHCNY2nXvo= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0-20220521103104-8f96da9f5d5e h1:3i3ny04XV6HbZ2N1oIBw1UBYATHAOpo4tfTF83JM3Z0= +gopkg.in/yaml.v3 v3.0.0-20220521103104-8f96da9f5d5e/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= From 5c1ade7e7099f9ee6367e6510a6de5983746746d Mon Sep 17 00:00:00 2001 From: guoguangwu Date: Mon, 29 May 2023 16:34:06 +0800 Subject: [PATCH 2/2] io/ioutil deprecated --- fs.go | 3 +-- fs_test.go | 21 ++++++++++----------- 2 files changed, 11 insertions(+), 13 deletions(-) diff --git a/fs.go b/fs.go index cf77840..932633e 100644 --- a/fs.go +++ b/fs.go @@ -3,7 +3,6 @@ package memoryfs import ( "io" "io/fs" - "io/ioutil" "strings" "time" ) @@ -102,7 +101,7 @@ func (m *FS) ReadFile(name string) ([]byte, error) { return nil, err } defer func() { _ = f.Close() }() - return ioutil.ReadAll(f) + return io.ReadAll(f) } // Sub returns an FS corresponding to the subtree rooted at dir. diff --git a/fs_test.go b/fs_test.go index 7a56979..768e59d 100644 --- a/fs_test.go +++ b/fs_test.go @@ -5,7 +5,6 @@ import ( "fmt" "io" "io/fs" - "io/ioutil" "strings" "sync" "testing" @@ -50,7 +49,7 @@ func Test_AllOperations(t *testing.T) { f, err := memfs.Open("test.txt") require.NoError(t, err) defer func() { _ = f.Close() }() - data, err := ioutil.ReadAll(f) + data, err := io.ReadAll(f) require.NoError(t, err) assert.Equal(t, "hello world", string(data)) }) @@ -74,7 +73,7 @@ func Test_AllOperations(t *testing.T) { f, err := memfs.Open("files/a/b/c/.secret") require.NoError(t, err) defer func() { _ = f.Close() }() - data, err := ioutil.ReadAll(f) + data, err := io.ReadAll(f) require.NoError(t, err) assert.Equal(t, "secret file!", string(data)) }) @@ -358,7 +357,7 @@ func Test_WriteWhileOpen(t *testing.T) { err = memfs.WriteFile("test.txt", []byte("hello world"), 0o644) require.NoError(t, err) - data, err := ioutil.ReadAll(f) + data, err := io.ReadAll(f) require.NoError(t, err) assert.Equal(t, "hello world", string(data)) @@ -371,7 +370,7 @@ func Test_DeleteFile(t *testing.T) { f, err := memfs.Open("test.txt") require.NoError(t, err) - data, err := ioutil.ReadAll(f) + data, err := io.ReadAll(f) require.NoError(t, err) assert.Equal(t, "hello world", string(data)) @@ -391,7 +390,7 @@ func Test_DeleteNestedFile(t *testing.T) { f, err := memfs.Open("/some/arbitrary/path/test.txt") require.NoError(t, err) - data, err := ioutil.ReadAll(f) + data, err := io.ReadAll(f) require.NoError(t, err) assert.Equal(t, "hello world", string(data)) @@ -411,7 +410,7 @@ func Test_DeleteEmptyDirectory(t *testing.T) { f, err := memfs.Open("/some/arbitrary/path/test.txt") require.NoError(t, err) - data, err := ioutil.ReadAll(f) + data, err := io.ReadAll(f) require.NoError(t, err) assert.Equal(t, "hello world", string(data)) @@ -434,7 +433,7 @@ func Test_DeleteNonEmptyDirectoryError(t *testing.T) { f, err := memfs.Open("/some/arbitrary/path/test.txt") require.NoError(t, err) - data, err := ioutil.ReadAll(f) + data, err := io.ReadAll(f) require.NoError(t, err) assert.Equal(t, "hello world", string(data)) @@ -453,7 +452,7 @@ func Test_DeleteNonEmptyDirectorySuccess(t *testing.T) { f, err := memfs.Open("/some/arbitrary/path/test.txt") require.NoError(t, err) - data, err := ioutil.ReadAll(f) + data, err := io.ReadAll(f) require.NoError(t, err) assert.Equal(t, "hello world", string(data)) @@ -475,7 +474,7 @@ func Test_DeleteNonEmptyDirectorySuccessFromHigherLevel(t *testing.T) { f, err := memfs.Open("/some/arbitrary/path/test.txt") require.NoError(t, err) - data, err := ioutil.ReadAll(f) + data, err := io.ReadAll(f) require.NoError(t, err) assert.Equal(t, "hello world", string(data)) @@ -500,7 +499,7 @@ func Test_CloneFS(t *testing.T) { require.NoError(t, err) defer func() { _ = f.Close() }() - data, err := ioutil.ReadAll(f) + data, err := io.ReadAll(f) require.NoError(t, err) assert.NotNil(t, data) }