--- wpa_supplicant-0.5.7/os_unix.c.bak 2006-12-31 23:41:44.000000000 +0200 +++ wpa_supplicant-0.5.7/os_unix.c 2007-08-11 13:58:31.199686015 +0300 @@ -96,6 +96,7 @@ int os_get_random(unsigned char *buf, si return -1; } + setbuf(f, NULL); rc = fread(buf, 1, len, f); fclose(f); --- wpa_supplicant-0.5.7/os_internal.c.bak 2006-12-31 23:41:44.000000000 +0200 +++ wpa_supplicant-0.5.7/os_internal.c 2007-08-11 13:58:26.574615803 +0300 @@ -107,6 +107,7 @@ int os_get_random(unsigned char *buf, si return -1; } + setbuf(f, NULL); rc = fread(buf, 1, len, f); fclose(f);