Version 6.1.4.1, tag libreoffice-6.1.4.1
[LibreOffice.git] / onlineupdate / source / update / common / updatehelper.h
blobb8c557bd64fd7a19911f3a0099b0525947ca22b6
1 /* This Source Code Form is subject to the terms of the Mozilla Public
2 * License, v. 2.0. If a copy of the MPL was not distributed with this
3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5 BOOL LaunchWinPostProcess(const WCHAR *installationDir,
6 const WCHAR *updateInfoDir,
7 bool forceSync,
8 HANDLE userToken);
9 BOOL StartServiceUpdate(LPCWSTR installDir);
10 BOOL GetUpdateDirectoryPath(LPWSTR path);
11 DWORD LaunchServiceSoftwareUpdateCommand(int argc, LPCWSTR *argv);
12 BOOL WriteStatusFailure(LPCWSTR updateDirPath, int errorCode);
13 BOOL WriteStatusPending(LPCWSTR updateDirPath);
14 DWORD WaitForServiceStop(LPCWSTR serviceName, DWORD maxWaitSeconds);
15 DWORD WaitForProcessExit(LPCWSTR filename, DWORD maxSeconds);
16 BOOL DoesFallbackKeyExist();
17 BOOL IsLocalFile(LPCWSTR file, BOOL &isLocal);
18 DWORD StartServiceCommand(int argc, LPCWSTR* argv);
19 BOOL IsUnpromptedElevation(BOOL &isUnpromptedElevation);
21 #define SVC_NAME L"LibreOfficeMaintenance"
23 #define BASE_SERVICE_REG_KEY \
24 L"SOFTWARE\\LibreOffice\\MaintenanceService"
26 // The test only fallback key, as its name implies, is only present on machines
27 // that will use automated tests. Since automated tests always run from a
28 // different directory for each test, the presence of this key bypasses the
29 // "This is a valid installation directory" check. This key also stores
30 // the allowed name and issuer for cert checks so that the cert check
31 // code can still be run unchanged.
32 #define TEST_ONLY_FALLBACK_KEY_PATH \
33 BASE_SERVICE_REG_KEY L"\\3932ecacee736d366d6436db0f55bce4"