sgw: reset cached egress file timestamp on file access errors
authorFerry Huberts <ferry.huberts@pelagic.nl>
Wed, 12 Nov 2014 16:21:28 +0000 (17:21 +0100)
committerFerry Huberts <ferry.huberts@pelagic.nl>
Wed, 12 Nov 2014 16:21:52 +0000 (17:21 +0100)
Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl>
src/egressFile.c

index 76d2651..94b6451 100644 (file)
@@ -438,11 +438,13 @@ static bool readEgressFile(char * fileName) {
   fd = open(!fileName ? DEF_GW_EGRESS_FILE : fileName, O_RDONLY);
   if (fd < 0) {
     /* could not access the file */
+    memset(&cachedStat, 0, sizeof(cachedStat));
     goto out;
   }
 
   if (fstat(fd, &statBuf)) {
     /* could not stat the file */
+    memset(&cachedStat, 0, sizeof(cachedStat));
     goto out;
   }
 
@@ -454,6 +456,7 @@ static bool readEgressFile(char * fileName) {
   fp = fdopen(fd, "r");
   if (!fp) {
     /* could not open the file */
+    memset(&cachedStat, 0, sizeof(cachedStat));
     goto out;
   }