12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- // Copyright 2019 The Chromium Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
- #ifndef RLZ_LIB_MACHINE_DEAL_WIN_H_
- #define RLZ_LIB_MACHINE_DEAL_WIN_H_
- #include <stddef.h>
- #include "rlz/lib/rlz_api.h"
- // OEM Deal confirmation storage functions.
- namespace rlz_lib {
- // The maximum length of an access points RLZ in bytes.
- const size_t kMaxDccLength = 128;
- // Makes the OEM Deal Confirmation code writable by all users on the machine.
- // This should be called before calling SetMachineDealCode from a non-admin
- // account.
- // Access: HKLM write.
- bool RLZ_LIB_API CreateMachineState(void);
- // Set the OEM Deal Confirmation Code (DCC). This information is used for RLZ
- // initialization.
- // Access: HKLM write, or
- // HKCU read if rlz_lib::CreateMachineState() has been successfully called.
- bool RLZ_LIB_API SetMachineDealCode(const char* dcc);
- // Get the DCC cgi argument string to append to a daily ping.
- // Should be used only by OEM deal trackers. Applications should use the
- // GetMachineDealCode method which has an AccessPoint parameter.
- // Access: HKLM read.
- bool RLZ_LIB_API GetMachineDealCodeAsCgi(char* cgi, size_t cgi_size);
- // Get the DCC value stored in registry.
- // Should be used only by OEM deal trackers. Applications should use the
- // GetMachineDealCode method which has an AccessPoint parameter.
- // Access: HKLM read.
- bool RLZ_LIB_API GetMachineDealCode(char* dcc, size_t dcc_size);
- // Parses a ping response, checks if it is valid and sets the machine DCC
- // from the response. The ping must also contain the current DCC value in
- // order to be considered valid.
- // Access: HKLM write;
- // HKCU write if CreateMachineState() has been successfully called.
- bool RLZ_LIB_API SetMachineDealCodeFromPingResponse(const char* response);
- } // namespace rlz_lib
- #endif // RLZ_LIB_MACHINE_DEAL_WIN_H_
|