我明顯錯過了一些東西。有人可以解釋爲什麼會發生這種情況嗎?爲什麼segfault on fclose?
#define RANDOM_DEVICE "/dev/random"
int create_shared_secret(char * secret,int size)
{
FILE * file=NULL;
int RetVal;
file=fopen(RANDOM_DEVICE,"r");
if(!file)
{
printf("Unable to open random device %s\n",RANDOM_DEVICE);
exit(-1);
}
RetVal=fread(&secret,1,size,file);
if(RetVal!=size)
{
printf("Problem getting seed value\n");
exit(-1);
}
if(file) fclose(file); //segfault right here
return 0;
}
不能相信我做了一件愚蠢的事。謝謝。 – Belrog 2009-07-28 09:44:03