
R=rogerta@chromium.org BUG=329295 Review URL: https://codereview.chromium.org/102833007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@241896 0039d316-1c4b-4281-b951-d872f2087c98
35 lines
1.2 KiB
C++
35 lines
1.2 KiB
C++
// Copyright (c) 2012 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_ID_H_
|
|
#define RLZ_LIB_MACHINE_ID_H_
|
|
|
|
#include "base/strings/string16.h"
|
|
|
|
#include <string>
|
|
|
|
namespace rlz_lib {
|
|
|
|
// Gets the unique ID for the machine used for RLZ tracking purposes. On
|
|
// Windows, this ID is derived from the Windows machine SID, and is the string
|
|
// representation of a 20 byte hash + 4 bytes volum id + a 1 byte checksum.
|
|
// Included in financial pings with events, unless explicitly forbidden by the
|
|
// calling application.
|
|
bool GetMachineId(std::string* machine_id);
|
|
|
|
// Retrieves a raw machine identifier string and a machine-specific
|
|
// 4 byte value. GetMachineId() will SHA1 |data|, append |more_data|, compute
|
|
// the Crc8 of that, and return a hex-encoded string of that data.
|
|
bool GetRawMachineId(base::string16* data, int* more_data);
|
|
|
|
namespace testing {
|
|
bool GetMachineIdImpl(const base::string16& sid_string,
|
|
int volume_id,
|
|
std::string* machine_id);
|
|
} // namespace testing
|
|
|
|
} // namespace rlz_lib
|
|
|
|
#endif // RLZ_LIB_MACHINE_ID_H_
|