Fix android update system

This commit is contained in:
Vladimir Stoilov 2023-04-12 17:09:38 +02:00
parent 0562180ba9
commit 7cbabd50c4
4 changed files with 22 additions and 4 deletions

View file

@ -10,9 +10,13 @@ func osGetInterfaceAddrs() ([]net.Addr, error) {
if err != nil {
return nil, err
}
var netList []net.Addr
for _, addr := range list {
netList = append(netList, addr.ToIPNet())
ipNetAddr, err := addr.ToIPNet()
if err == nil {
netList = append(netList, ipNetAddr)
}
}
return netList, nil

View file

@ -59,3 +59,14 @@ func GetVersion(identifier string) (*updater.ResourceVersion, error) {
return rv, nil
}
// GetVersionWithFullID returns the selected generic version of the given full identifier.
// The returned resource version may not be modified.
func GetVersionWithFullID(identifier string) (*updater.ResourceVersion, error) {
rv, err := registry.GetVersion(identifier)
if err != nil {
return nil, err
}
return rv, nil
}

View file

@ -58,6 +58,9 @@ var (
// more context to requests made by the registry when
// fetching resources from the update server.
UserAgent = "Core"
// Explicitly disables automatic software updates. Used in android.
DisableSoftwareAutoUpdate = false
)
const (
@ -145,7 +148,7 @@ func start() error {
registry,
initialReleaseChannel,
true,
enableSoftwareUpdates(),
enableSoftwareUpdates() && !DisableSoftwareAutoUpdate,
enableIntelUpdates(),
)
if warning != nil {
@ -247,7 +250,7 @@ func checkForUpdates(ctx context.Context) (err error) {
}
defer func() {
// Resolve any error and and send succes notification.
// Resolve any error and and send success notification.
if err == nil {
log.Infof("updates: successfully checked for updates")
notifyUpdateSuccess(forcedUpdate)

View file

@ -115,7 +115,7 @@ func notifyUpdateCheckFailed(forced bool, err error) {
// Not failed often enough for notification.
return
case lastSuccess == nil:
// No recorded successful udpate.
// No recorded successful update.
case time.Now().Add(-failedUpdateNotifyDurationThreshold).Before(*lastSuccess):
// Failed too recently for notification.
return