<div dir="ltr">There is a note in src/os/unix/ngx_user.c about a bug in glibc for crypt_r:<div><br></div><div><div>    /* work around the glibc bug */</div><div>    cd.current_salt[0] = ~salt[0];</div><div><br></div><div>    value = crypt_r((char *) key, (char *) salt, &cd);</div>
</div><div><br></div><div style>I was wondering if anyone knew what the bug was, as I am running on a platform (Musl libc) that has got NGX_HAVE_GNU_CRYPT_R but has a different implementation, in particular has no current_salt field in struct crypt_data (and indeed the man page says you should treat it as opaque except for the initialized field).</div>
<div style><br></div><div style>I was wondering exactly what the bug was as then I could write a test for it rather than always including this code; I have not been able to find it in the glibc bug tracker though.</div><div style>
<br></div><div style>Thanks</div><div style><br></div><div style>Justin</div><div style><br></div></div>