Sharing and synchronizing electronically stored files
US-9244934-B2 · Jan 26, 2016 · US
US10846074B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10846074-B2 |
| Application number | US-201414275890-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 13, 2014 |
| Priority date | May 10, 2013 |
| Publication date | Nov 24, 2020 |
| Grant date | Nov 24, 2020 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Systems and methods to automatically upgrade, or update a synchronization client to a cloud-based platform are provided. The automatic upgrading can be provided to a personal or an enterprise-level synchronization client. The synchronization client is implemented in a manner that is silent, secure and fault tolerant. In one embodiment, the disclosed technology includes an executable process to download the update, verify the contents, and apply the update. The contents can be verified by checking the certificate on any binary. The systems and methods further include identification and handling of items to be ignored by the synchronization client for synchronization with a cloud-based platform. In some embodiments, files and folders which typically should not be synchronized are identified and removed from the synchronization process in an effective manner.
Opening claim text (preview).
The invention claimed is: 1. A computer-implemented method of facilitating upgrades to a synchronization client in a cloud-based environment, the method comprising: checking, by a synchronization executable component of the synchronization client, a file to determine a number of previous unsuccessful attempts to update the synchronization client, wherein the synchronization client executes on a client device and the synchronization executable component enables synchronization of one or more items stored locally on the client device with the cloud-based environment; checking, by the synchronization executable component of the synchronization client, for available updates of the synchronization client on the cloud-based platform; upon verifying from the file that the number of previous unsuccessful attempts to install the available updates of the synchronization client is less than a threshold limit: storing, by the synchronization executable component of the synchronization client, the updates of the synchronization client on the client device; launching, by the synchronization executable component of the synchronization client, an update component of the synchronization client, the update component enables updating of at least one of the synchronization executable component or the update component of the synchronization client; verifying, by the update component of the synchronization client, the updates of the synchronization client, wherein verifying the updates includes verifying a hash; installing, by the update component of the synchronization client on the client device, the updates of the synchronization client; and in response to determining that the number of previous unsuccessful attempts to install the available updates of the synchronization client equals or exceeds the threshold limit, discontinuing, by the update component of the synchronization client, attempts to install the available updates of the synchronization client, continue checking, by the synchronization executable of the synchronization client, for available updates of the synchronization client on the cloud-based platform, and, when a new update of the synchronization client is available, storing, by the synchronization executable of the synchronization client, the new update of the synchronization client on the electronic device, launching, by the synchronization executable of the synchronization client, the update component, verifying, by the update component of the synchronization client, the new update of the synchronization client, installing, by the update component of the synchronization client on the client device, the new update of the synchronization client, and in response to detection of an error condition impacting the new update of the synchronization client, restoring, by the update component of the synchronization client, the synchronization client to a functional state without interruption of the synchronization executable of the synchronization client by the error condition, and incrementing, by the update component of the synchronization client, the number of previous unsuccessful attempts to update the synchronization client in the file. 2. The computer implemented method of claim 1 , wherein the storing the updates includes downloading the updates using a secure connection. 3. The computer implemented method of claim 1 , wherein the installing the updates includes unpacking binary files from the stored updates. 4. The computer implemented method of claim 1 , wherein the installing the updates occurs for a subset of the users of the synchronization client. 5. The computer implemented method of claim 1 , wherein the checking for updates is performed by a version checker, the storing the updates and the verifying the updates is performed by a downloader, the installing the updates is performed by an installer. 6. The computer implemented method of claim 1 , wherein if the installing the updates fails, reverting to a previous version of the synchronization client. 7. The computer implemented method of claim 1 , wherein if the installing the updates succeeds, the synchronization client is automatically launched and any temporary stored files are deleted. 8. The computer implemented method of claim 1 , wherein if the installing the updates succeeds, a notification to the cloud-based environment within a preset amount of time. 9. A non-transitory machine readable storage medium encoded with instructions for performing a method of facilitating upgrades to a synchronization client in a cloud-based environment, the instructions configured to: checking, by a synchronization executable component of the synchronization client, a file to determine a number of previous unsuccessful attempts to update the synchronization client, wherein the synchronization client executes on a client device and the synchronization executable component enables synchronization of one or more items stored locally on the client device with the cloud-based environment; checking, by the synchronization executable component of the synchronization client, for available updates of the synchronization client on the cloud-based platform; upon verifying from the file that the number of previous unsuccessful attempts to install the available updates of the synchronization client is less than a threshold limit: storing, by the synchronization executable component of the synchronization client, the updates of the synchronization client on the client device; launching, by the synchronization executable component of the synchronization client, an update component of the synchronization client, the update component enables updating of at least one of the synchronization executable component or the update component of the synchronization client; verifying, by the update component of the synchronization client, the updates of the synchronization client, wherein verifying the updates includes verifying a hash; installing, by the update component of the synchronization client on the client device, the updates of the synchronization client; and in response to determining that the number of previous unsuccessful attempts to install the available updates of the synchronization client equals or exceeds the threshold limit, discontinuing, by the update component of the synchronization client, attempts to install the available updates of the synchronization client, continue checking, by the synchronization executable of the synchronization client, for available updates of the synchronization client on the cloud-based platform, and, when a new update of the synchronization client is available, storing, by the synchronization executable of the synchronization client, the new update of the synchronization client on the electronic device, launching, by the synchronization executable of the synchronization client, the update component, verifying, by the update component of the synchronization client, the new update of the synchronization client, installing, by the update component of the synchronization client on the client device, the new update of the synchronization client, and in response to detection of an error condition impacting the new update of the synchronization client, restoring, by the update component of the synchronization client, the synchronization client to a functional state without interruption of the synchronization executable of the synchronization client by the error condition, and incrementing, by the update component of the synchronization client, the number of previous unsuccessful attempts to update the synchronization client in the file. 10. The non-transitory machine readable storage medium of claim 9 , wherein the instructions to store the updates inc
at the transport layer · CPC title
received data contents, e.g. message integrity · CPC title
Program loading or initiating (bootstrapping G06F9/4401; security arrangements for program loading or initiating G06F21/57) · CPC title
using certificates (cryptographic mechanisms or cryptographic arrangements for entity authentication involving certificates H04L9/3263) · CPC title
Subscription-based services using application servers or record carriers, e.g. SIM application toolkits · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.