if(config->etag_compare_file) {
char *etag_from_file = NULL;
char *header = NULL;
- size_t file_size = 0;
/* open file for reading: */
FILE *file = fopen(config->etag_compare_file, FOPEN_READTEXT);
break;
}
- /* get file size */
- fseek(file, 0, SEEK_END);
- file_size = ftell(file);
-
- /*
- * check if file is empty, if it's not load etag
- * else continue with empty etag
- */
- if(file_size != 0) {
- fseek(file, 0, SEEK_SET);
- file2string(&etag_from_file, file);
-
+ if((PARAM_OK == file2string(&etag_from_file, file)) &&
+ etag_from_file)
header = aprintf("If-None-Match: \"%s\"", etag_from_file);
- }
- else {
+ else
header = aprintf("If-None-Match: \"\"");
- }
if(!header) {
warnf(