소스 검색

ntlm: rework random work

Jean-Baptiste Kempf 9 년 전
부모
커밋
cc28cbd584
1개의 변경된 파일6개의 추가작업 그리고 4개의 파일을 삭제
  1. 6 4
      src/smb_ntlm.c

+ 6 - 4
src/smb_ntlm.c

@@ -57,10 +57,7 @@ uint64_t    smb_ntlm_generate_challenge()
     int             fd;
 
     fd = open(URANDOM, O_RDONLY);
-    if (fd < 0)
-        /* FIXME: Wrong on a arch with long is 32 bits */
-        return random();
-    else
+    if (fd >= 0)
     {
         while(read(fd, (void *)&result, sizeof(result)) != sizeof(result))
             ;
@@ -68,6 +65,11 @@ uint64_t    smb_ntlm_generate_challenge()
         close(fd);
         return result;
     }
+    else
+    {
+        /* FIXME: Wrong on a arch with long is 32 bits */
+        return random();
+    }
 }
 
 void        smb_ntlm_generate_xkey(smb_ntlmh cli_session_key)