/* 略. */ • /* Prepare us the iterations */ • iterations = 1000 + (int) (1000.0 * rand() / (RAND_MAX + 1.0)); /* ←これが 怪しい. */ • /* 略. */ • • if (!create_cipher (login, calgo, halgo, salt, sizeof (salt), iterations, &cipher)) /* ←ここで落ちている. */ • return FALSE; • 上記のコードなのですが私が読んだ限りではiterationsには1000から2000の値 が入ると見たのですが、実際には、 • • (gdb) print iterations • $15 = 2147484648 • パルプンテ!パルプンテ!パルプンテ!