Files
overlord/Overlord-Client/cmd/agent/config/identity_android.go
T

39 lines
868 B
Go
Raw Normal View History

2026-03-20 22:38:17 -05:00
//go:build android
package config
import (
"crypto/rand"
"encoding/hex"
"log"
"os"
"strings"
)
const androidMachineIDFile = "config/android_machine_id"
2026-03-20 22:38:17 -05:00
func platformMachineID() string {
data, err := os.ReadFile(androidMachineIDFile)
if err == nil {
if id := strings.TrimSpace(string(data)); id != "" {
return id
}
}
b := make([]byte, 16)
if _, err := rand.Read(b); err != nil {
log.Printf("[identity] WARNING: failed to generate android machine ID: %v", err)
return ""
}
id := hex.EncodeToString(b)
if err := os.MkdirAll("config", 0700); err != nil {
log.Printf("[identity] WARNING: failed to create config dir for android machine ID: %v", err)
return id
}
if err := os.WriteFile(androidMachineIDFile, []byte(id), 0600); err != nil {
log.Printf("[identity] WARNING: failed to persist android machine ID: %v", err)
}
return id
2026-03-20 22:38:17 -05:00
}