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

Side by Side Diff: base/md5.cc

Issue 552004: Style cleanup in preparation for auto-linting base/. (Closed)
Patch Set: Created 10 years, 11 months 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
« no previous file with comments | « base/logging_win.cc ('k') | base/message_loop.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // The original file was copied from sqlite, and was in the public domain. 1 // The original file was copied from sqlite, and was in the public domain.
2 // Modifications Copyright 2006 Google Inc. All Rights Reserved 2 // Modifications Copyright 2006 Google Inc. All Rights Reserved
3 3
4 /* 4 /*
5 * This code implements the MD5 message-digest algorithm. 5 * This code implements the MD5 message-digest algorithm.
6 * The algorithm is due to Ron Rivest. This code was 6 * The algorithm is due to Ron Rivest. This code was
7 * written by Colin Plumb in 1993, no copyright is claimed. 7 * written by Colin Plumb in 1993, no copyright is claimed.
8 * This code is in the public domain; do with it what you wish. 8 * This code is in the public domain; do with it what you wish.
9 * 9 *
10 * Equivalent code is available from RSA Data Security, Inc. 10 * Equivalent code is available from RSA Data Security, Inc.
(...skipping 15 matching lines...) Expand all
26 26
27 struct Context { 27 struct Context {
28 uint32 buf[4]; 28 uint32 buf[4];
29 uint32 bits[2]; 29 uint32 bits[2];
30 unsigned char in[64]; 30 unsigned char in[64];
31 }; 31 };
32 32
33 /* 33 /*
34 * Note: this code is harmless on little-endian machines. 34 * Note: this code is harmless on little-endian machines.
35 */ 35 */
36 static void byteReverse (unsigned char *buf, unsigned longs){ 36 static void byteReverse(unsigned char *buf, unsigned longs){
37 uint32 t; 37 uint32 t;
38 do { 38 do {
39 t = (uint32)((unsigned)buf[3]<<8 | buf[2]) << 16 | 39 t = (uint32)((unsigned)buf[3]<<8 | buf[2]) << 16 |
40 ((unsigned)buf[1]<<8 | buf[0]); 40 ((unsigned)buf[1]<<8 | buf[0]);
41 *(uint32 *)buf = t; 41 *(uint32 *)buf = t;
42 buf += 4; 42 buf += 4;
43 } while (--longs); 43 } while (--longs);
44 } 44 }
45 /* The four core functions - F1 is optimized somewhat */ 45 /* The four core functions - F1 is optimized somewhat */
46 46
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
168 168
169 t = ctx->bits[0]; 169 t = ctx->bits[0];
170 if ((ctx->bits[0] = t + ((uint32)len << 3)) < t) 170 if ((ctx->bits[0] = t + ((uint32)len << 3)) < t)
171 ctx->bits[1]++; /* Carry from low to high */ 171 ctx->bits[1]++; /* Carry from low to high */
172 ctx->bits[1] += static_cast<uint32>(len >> 29); 172 ctx->bits[1] += static_cast<uint32>(len >> 29);
173 173
174 t = (t >> 3) & 0x3f; /* Bytes already in shsInfo->data */ 174 t = (t >> 3) & 0x3f; /* Bytes already in shsInfo->data */
175 175
176 /* Handle any leading odd-sized chunks */ 176 /* Handle any leading odd-sized chunks */
177 177
178 if ( t ) { 178 if (t) {
179 unsigned char *p = (unsigned char *)ctx->in + t; 179 unsigned char *p = (unsigned char *)ctx->in + t;
180 180
181 t = 64-t; 181 t = 64-t;
182 if (len < t) { 182 if (len < t) {
183 memcpy(p, buf, len); 183 memcpy(p, buf, len);
184 return; 184 return;
185 } 185 }
186 memcpy(p, buf, t); 186 memcpy(p, buf, t);
187 byteReverse(ctx->in, 16); 187 byteReverse(ctx->in, 16);
188 MD5Transform(ctx->buf, (uint32 *)ctx->in); 188 MD5Transform(ctx->buf, (uint32 *)ctx->in);
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
250 memset(ctx, 0, sizeof(ctx)); /* In case it's sensitive */ 250 memset(ctx, 0, sizeof(ctx)); /* In case it's sensitive */
251 } 251 }
252 252
253 std::string MD5DigestToBase16(const MD5Digest& digest){ 253 std::string MD5DigestToBase16(const MD5Digest& digest){
254 static char const zEncode[] = "0123456789abcdef"; 254 static char const zEncode[] = "0123456789abcdef";
255 255
256 std::string ret; 256 std::string ret;
257 ret.resize(32); 257 ret.resize(32);
258 258
259 int j = 0; 259 int j = 0;
260 for(int i = 0; i < 16; i ++){ 260 for (int i = 0; i < 16; i ++) {
261 int a = digest.a[i]; 261 int a = digest.a[i];
262 ret[j++] = zEncode[(a>>4)&0xf]; 262 ret[j++] = zEncode[(a>>4)&0xf];
263 ret[j++] = zEncode[a & 0xf]; 263 ret[j++] = zEncode[a & 0xf];
264 } 264 }
265 return ret; 265 return ret;
266 } 266 }
267 267
268 void MD5Sum(const void* data, size_t length, MD5Digest* digest) { 268 void MD5Sum(const void* data, size_t length, MD5Digest* digest) {
269 MD5Context ctx; 269 MD5Context ctx;
270 MD5Init(&ctx); 270 MD5Init(&ctx);
271 MD5Update(&ctx, static_cast<const unsigned char*>(data), length); 271 MD5Update(&ctx, static_cast<const unsigned char*>(data), length);
272 MD5Final(digest, &ctx); 272 MD5Final(digest, &ctx);
273 } 273 }
274 274
275 std::string MD5String(const std::string& str) { 275 std::string MD5String(const std::string& str) {
276 MD5Digest digest; 276 MD5Digest digest;
277 MD5Sum(str.data(), str.length(), &digest); 277 MD5Sum(str.data(), str.length(), &digest);
278 return MD5DigestToBase16(digest); 278 return MD5DigestToBase16(digest);
279 } 279 }
OLDNEW
« no previous file with comments | « base/logging_win.cc ('k') | base/message_loop.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698