Browse Source

rework the file name checking logic

Shelikhoo 4 years ago
parent
commit
93e44b72d9

+ 3 - 1
common/platform/securedload/embeddedhash.go

@@ -4,6 +4,7 @@ import (
 	"bytes"
 	"bytes"
 	"crypto/sha256"
 	"crypto/sha256"
 	"encoding/hex"
 	"encoding/hex"
+	"path/filepath"
 	"strings"
 	"strings"
 
 
 	"github.com/v2fly/VSign/insmgr"
 	"github.com/v2fly/VSign/insmgr"
@@ -18,7 +19,8 @@ type EmbeddedHashProtectedLoader struct {
 }
 }
 
 
 func (e EmbeddedHashProtectedLoader) VerifyAndLoad(filename string) ([]byte, error) {
 func (e EmbeddedHashProtectedLoader) VerifyAndLoad(filename string) ([]byte, error) {
-	filecontent, err := filesystem.ReadFile(platform.GetAssetLocation(filename))
+	platformFileName := filepath.FromSlash(filename)
+	filecontent, err := filesystem.ReadFile(platform.GetAssetLocation(platformFileName))
 	if err != nil {
 	if err != nil {
 		return nil, newError("Cannot find file", filename).Base(err)
 		return nil, newError("Cannot find file", filename).Base(err)
 	}
 	}

+ 0 - 3
common/platform/securedload/file.go

@@ -1,9 +1,6 @@
 package securedload
 package securedload
 
 
-import "path/filepath"
-
 func GetAssetSecured(name string) ([]byte, error) {
 func GetAssetSecured(name string) ([]byte, error) {
-	name = filepath.FromSlash(name)
 
 
 	var err error
 	var err error
 	for k, v := range knownProtectedLoader {
 	for k, v := range knownProtectedLoader {