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

Side by Side Diff: fusl/src/crypt/crypt_r.c

Issue 1714623002: [fusl] clang-format fusl (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: headers too Created 4 years, 10 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
OLDNEW
1 #include <crypt.h> 1 #include <crypt.h>
2 #include "libc.h" 2 #include "libc.h"
3 3
4 struct crypt_data; 4 struct crypt_data;
5 5
6 char *__crypt_des(const char *, const char *, char *); 6 char* __crypt_des(const char*, const char*, char*);
7 char *__crypt_md5(const char *, const char *, char *); 7 char* __crypt_md5(const char*, const char*, char*);
8 char *__crypt_blowfish(const char *, const char *, char *); 8 char* __crypt_blowfish(const char*, const char*, char*);
9 char *__crypt_sha256(const char *, const char *, char *); 9 char* __crypt_sha256(const char*, const char*, char*);
10 char *__crypt_sha512(const char *, const char *, char *); 10 char* __crypt_sha512(const char*, const char*, char*);
11 11
12 char *__crypt_r(const char *key, const char *salt, struct crypt_data *data) 12 char* __crypt_r(const char* key, const char* salt, struct crypt_data* data) {
13 { 13 /* Per the crypt_r API, the caller has provided a pointer to
14 » /* Per the crypt_r API, the caller has provided a pointer to 14 * struct crypt_data; however, this implementation does not
15 » * struct crypt_data; however, this implementation does not 15 * use the structure to store any internal state, and treats
16 » * use the structure to store any internal state, and treats 16 * it purely as a char buffer for storing the result. */
17 » * it purely as a char buffer for storing the result. */ 17 char* output = (char*)data;
18 » char *output = (char *)data; 18 if (salt[0] == '$' && salt[1] && salt[2]) {
19 » if (salt[0] == '$' && salt[1] && salt[2]) { 19 if (salt[1] == '1' && salt[2] == '$')
20 » » if (salt[1] == '1' && salt[2] == '$') 20 return __crypt_md5(key, salt, output);
21 » » » return __crypt_md5(key, salt, output); 21 if (salt[1] == '2' && salt[3] == '$')
22 » » if (salt[1] == '2' && salt[3] == '$') 22 return __crypt_blowfish(key, salt, output);
23 » » » return __crypt_blowfish(key, salt, output); 23 if (salt[1] == '5' && salt[2] == '$')
24 » » if (salt[1] == '5' && salt[2] == '$') 24 return __crypt_sha256(key, salt, output);
25 » » » return __crypt_sha256(key, salt, output); 25 if (salt[1] == '6' && salt[2] == '$')
26 » » if (salt[1] == '6' && salt[2] == '$') 26 return __crypt_sha512(key, salt, output);
27 » » » return __crypt_sha512(key, salt, output); 27 }
28 » } 28 return __crypt_des(key, salt, output);
29 » return __crypt_des(key, salt, output);
30 } 29 }
31 30
32 weak_alias(__crypt_r, crypt_r); 31 weak_alias(__crypt_r, crypt_r);
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698