20
20
package file_integrity
21
21
22
22
import (
23
+ "errors"
23
24
"fmt"
24
25
"os"
25
26
"syscall"
26
27
"time"
27
28
"unsafe"
28
29
29
- "github.com/joeshaw/multierror"
30
-
31
30
"github.com/elastic/beats/v7/libbeat/common/file"
32
31
)
33
32
@@ -40,12 +39,12 @@ func NewMetadata(path string, info os.FileInfo) (*Metadata, error) {
40
39
return nil , fmt .Errorf ("unexpected fileinfo sys type %T for %v" , info .Sys (), path )
41
40
}
42
41
43
- var errs multierror. Errors
42
+ var errs [] error
44
43
45
44
state := file .GetOSState (info )
46
45
47
46
fileInfo := & Metadata {
48
- Inode : uint64 ( state .IdxHi << 32 + state .IdxLo ) ,
47
+ Inode : state .IdxHi << 32 + state .IdxLo ,
49
48
Mode : info .Mode (),
50
49
Size : uint64 (info .Size ()),
51
50
MTime : time .Unix (0 , attrs .LastWriteTime .Nanoseconds ()).UTC (),
@@ -73,7 +72,7 @@ func NewMetadata(path string, info os.FileInfo) (*Metadata, error) {
73
72
if fileInfo .Origin , err = GetFileOrigin (path ); err != nil {
74
73
errs = append (errs , fmt .Errorf ("GetFileOrigin failed: %w" , err ))
75
74
}
76
- return fileInfo , errs . Err ( )
75
+ return fileInfo , errors . Join ( errs ... )
77
76
}
78
77
79
78
// fileOwner returns the SID and name (domain\user) of the file's owner.
@@ -89,10 +88,11 @@ func fileOwner(path string) (sid, owner string, err error) {
89
88
OwnerSecurityInformation , & securityID , nil , nil , nil , & securityDescriptor ); err != nil {
90
89
return "" , "" , fmt .Errorf ("failed on GetSecurityInfo for %v: %w" , path , err )
91
90
}
91
+ //nolint:errcheck // ignore
92
92
defer syscall .LocalFree ((syscall .Handle )(unsafe .Pointer (securityDescriptor )))
93
93
94
94
// Convert SID to a string and lookup the username.
95
- var errs multierror. Errors
95
+ var errs [] error
96
96
sid , err = securityID .String ()
97
97
if err != nil {
98
98
errs = append (errs , err )
@@ -105,5 +105,5 @@ func fileOwner(path string) (sid, owner string, err error) {
105
105
owner = fmt .Sprintf (`%s\%s` , domain , account )
106
106
}
107
107
108
- return sid , owner , errs . Err ( )
108
+ return sid , owner , errors . Join ( errs ... )
109
109
}
0 commit comments