| 1 | #include <unistd.h> |
| 2 | #include <crypt.h> |
| 3 | |
| 4 | char *crypt(const char *key, const char *salt) |
| 5 | { |
| 6 | 	/* This buffer is sufficiently large for all |
| 7 | 	 * currently-supported hash types. It needs to be updated if |
| 8 | 	 * longer hashes are added. The cast to struct crypt_data * is |
| 9 | 	 * purely to meet the public API requirements of the crypt_r |
| 10 | 	 * function; the implementation of crypt_r uses the object |
| 11 | 	 * purely as a char buffer. */ |
| 12 | 	static char buf[128]; |
| 13 | 	return __crypt_r(key, salt, (struct crypt_data *)buf); |
| 14 | } |