Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(123)

Side by Side Diff: chrome/browser/extensions/api/music_manager_private/device_id_linux.cc

Issue 635573005: Cleanup: Better constify some strings in chrome/browser/{chromeos,extensions}. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase, nit Created 6 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/extensions/api/music_manager_private/device_id.h" 5 #include "chrome/browser/extensions/api/music_manager_private/device_id.h"
6 6
7 #include <sys/socket.h> // Must be included before ifaddrs.h. 7 #include <sys/socket.h> // Must be included before ifaddrs.h.
8 #include <ifaddrs.h> 8 #include <ifaddrs.h>
9 #include <net/if.h> 9 #include <net/if.h>
10 #include <sys/ioctl.h> 10 #include <sys/ioctl.h>
(...skipping 10 matching lines...) Expand all
21 #include "content/public/browser/browser_thread.h" 21 #include "content/public/browser/browser_thread.h"
22 22
23 namespace { 23 namespace {
24 24
25 using extensions::api::DeviceId; 25 using extensions::api::DeviceId;
26 26
27 typedef base::Callback<bool(const void* bytes, size_t size)> 27 typedef base::Callback<bool(const void* bytes, size_t size)>
28 IsValidMacAddressCallback; 28 IsValidMacAddressCallback;
29 29
30 const char kDiskByUuidDirectoryName[] = "/dev/disk/by-uuid"; 30 const char kDiskByUuidDirectoryName[] = "/dev/disk/by-uuid";
31 const char* kDeviceNames[] = { 31 const char* const kDeviceNames[] = {
32 "sda1", "hda1", "dm-0", "xvda1", "sda2", "hda2", "dm-1", "xvda2", 32 "sda1", "hda1", "dm-0", "xvda1", "sda2", "hda2", "dm-1", "xvda2",
33 }; 33 };
34 // Fedora 15 uses biosdevname feature where Embedded ethernet uses the 34 // Fedora 15 uses biosdevname feature where Embedded ethernet uses the
35 // "em" prefix and PCI cards use the p[0-9]c[0-9] format based on PCI 35 // "em" prefix and PCI cards use the p[0-9]c[0-9] format based on PCI
36 // slot and card information. 36 // slot and card information.
37 const char* kNetDeviceNamePrefixes[] = { 37 const char* const kNetDeviceNamePrefixes[] = {
38 "eth", "em", "en", "wl", "ww", "p0", "p1", "p2", "p3", "p4", "p5", "p6", 38 "eth", "em", "en", "wl", "ww", "p0", "p1", "p2", "p3", "p4", "p5", "p6",
39 "p7", "p8", "p9", "wlan" 39 "p7", "p8", "p9", "wlan"
40 }; 40 };
41 41
42 // Map from device name to disk uuid 42 // Map from device name to disk uuid
43 typedef std::map<base::FilePath, base::FilePath> DiskEntries; 43 typedef std::map<base::FilePath, base::FilePath> DiskEntries;
44 44
45 std::string GetDiskUuid() { 45 std::string GetDiskUuid() {
46 base::ThreadRestrictions::AssertIOAllowed(); 46 base::ThreadRestrictions::AssertIOAllowed();
47 47
48 DiskEntries disk_uuids; 48 DiskEntries disk_uuids;
49 base::FileEnumerator files(base::FilePath(kDiskByUuidDirectoryName), 49 base::FileEnumerator files(base::FilePath(kDiskByUuidDirectoryName),
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
92 } 92 }
93 93
94 class MacAddressProcessor { 94 class MacAddressProcessor {
95 public: 95 public:
96 explicit MacAddressProcessor( 96 explicit MacAddressProcessor(
97 const IsValidMacAddressCallback& is_valid_mac_address) 97 const IsValidMacAddressCallback& is_valid_mac_address)
98 : is_valid_mac_address_(is_valid_mac_address) { 98 : is_valid_mac_address_(is_valid_mac_address) {
99 } 99 }
100 100
101 bool ProcessInterface(struct ifaddrs *ifaddr, 101 bool ProcessInterface(struct ifaddrs *ifaddr,
102 const char* prefixes[], 102 const char* const prefixes[],
103 size_t prefixes_count) { 103 size_t prefixes_count) {
104 const int MAC_LENGTH = 6; 104 const int MAC_LENGTH = 6;
105 struct ifreq ifinfo; 105 struct ifreq ifinfo;
106 106
107 memset(&ifinfo, 0, sizeof(ifinfo)); 107 memset(&ifinfo, 0, sizeof(ifinfo));
108 strncpy(ifinfo.ifr_name, ifaddr->ifa_name, sizeof(ifinfo.ifr_name) - 1); 108 strncpy(ifinfo.ifr_name, ifaddr->ifa_name, sizeof(ifinfo.ifr_name) - 1);
109 109
110 int sd = socket(AF_INET, SOCK_DGRAM, 0); 110 int sd = socket(AF_INET, SOCK_DGRAM, 0);
111 int result = ioctl(sd, SIOCGIFHWADDR, &ifinfo); 111 int result = ioctl(sd, SIOCGIFHWADDR, &ifinfo);
112 close(sd); 112 close(sd);
(...skipping 12 matching lines...) Expand all
125 // Got one! 125 // Got one!
126 found_mac_address_ = 126 found_mac_address_ =
127 base::StringToLowerASCII(base::HexEncode(mac_address, MAC_LENGTH)); 127 base::StringToLowerASCII(base::HexEncode(mac_address, MAC_LENGTH));
128 return false; 128 return false;
129 } 129 }
130 130
131 std::string mac_address() const { return found_mac_address_; } 131 std::string mac_address() const { return found_mac_address_; }
132 132
133 private: 133 private:
134 bool IsValidPrefix(const char* name, 134 bool IsValidPrefix(const char* name,
135 const char* prefixes[], 135 const char* const prefixes[],
136 size_t prefixes_count) { 136 size_t prefixes_count) {
137 for (size_t i = 0; i < prefixes_count; i++) { 137 for (size_t i = 0; i < prefixes_count; i++) {
138 if (strncmp(prefixes[i], name, strlen(prefixes[i])) == 0) 138 if (strncmp(prefixes[i], name, strlen(prefixes[i])) == 0)
139 return true; 139 return true;
140 } 140 }
141 return false; 141 return false;
142 } 142 }
143 143
144 const IsValidMacAddressCallback& is_valid_mac_address_; 144 const IsValidMacAddressCallback& is_valid_mac_address_;
145 std::string found_mac_address_; 145 std::string found_mac_address_;
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
197 content::BrowserThread::PostTask( 197 content::BrowserThread::PostTask(
198 content::BrowserThread::FILE, 198 content::BrowserThread::FILE,
199 FROM_HERE, 199 FROM_HERE,
200 base::Bind(GetRawDeviceIdImpl, 200 base::Bind(GetRawDeviceIdImpl,
201 base::Bind(DeviceId::IsValidMacAddress), 201 base::Bind(DeviceId::IsValidMacAddress),
202 callback)); 202 callback));
203 } 203 }
204 204
205 } // namespace api 205 } // namespace api
206 } // namespace extensions 206 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698