aboutsummaryrefslogtreecommitdiff
path: root/pkg/mountmanager/socket.go
diff options
context:
space:
mode:
authorchrislusf <chris.lu@gmail.com>2025-12-06 12:02:18 -0800
committerChris Lu <chrislusf@users.noreply.github.com>2025-12-06 18:53:22 -0800
commit70ad54f12e2e1bbf0a841b2604f150464fab1e8f (patch)
tree8737109aaa604a9f8daea493d814f23404d92b7b /pkg/mountmanager/socket.go
parent8888825ea9999fd07ce8a3d9bbce039c98694e4d (diff)
downloadseaweedfs-csi-driver-70ad54f12e2e1bbf0a841b2604f150464fab1e8f.tar.xz
seaweedfs-csi-driver-70ad54f12e2e1bbf0a841b2604f150464fab1e8f.zip
fix: address PR review comments
- Set localSocket in rebuildVolumeFromStaging to fix invalid gRPC target - Use SHA256 hash (16 hex chars) in LocalSocketPath to minimize collision risk - Update GitHub Actions to latest versions (checkout@v4, metadata-action@v5, etc.) - Fix volumeMounts/volumes conditional mismatch in helm templates - Add documentation for mountService defaults in values.yaml
Diffstat (limited to 'pkg/mountmanager/socket.go')
-rw-r--r--pkg/mountmanager/socket.go13
1 files changed, 6 insertions, 7 deletions
diff --git a/pkg/mountmanager/socket.go b/pkg/mountmanager/socket.go
index f327dcb..95d63c0 100644
--- a/pkg/mountmanager/socket.go
+++ b/pkg/mountmanager/socket.go
@@ -1,10 +1,10 @@
package mountmanager
import (
+ "crypto/sha256"
+ "encoding/hex"
"fmt"
"path/filepath"
-
- "github.com/seaweedfs/seaweedfs/weed/util"
)
// DefaultSocketDir is the default directory for volume sockets.
@@ -12,13 +12,12 @@ const DefaultSocketDir = "/var/lib/seaweedfs-mount"
// LocalSocketPath returns the unix socket path used to communicate with the weed mount process.
// The baseDir parameter should be the directory where sockets are stored (e.g., derived from mountEndpoint).
+// Uses SHA256 hash (first 16 hex chars = 64 bits) to minimize collision risk.
func LocalSocketPath(baseDir, volumeID string) string {
if baseDir == "" {
baseDir = DefaultSocketDir
}
- hash := util.HashToInt32([]byte(volumeID))
- if hash < 0 {
- hash = -hash
- }
- return filepath.Join(baseDir, fmt.Sprintf("seaweedfs-mount-%d.sock", hash))
+ h := sha256.Sum256([]byte(volumeID))
+ hashStr := hex.EncodeToString(h[:8]) // 16 hex chars = 64 bits
+ return filepath.Join(baseDir, fmt.Sprintf("seaweedfs-mount-%s.sock", hashStr))
}