summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Bratch <luke@bratch.co.uk>2019-07-10 19:09:59 +0100
committerLuke Bratch <luke@bratch.co.uk>2019-07-10 19:09:59 +0100
commit22a4f361329ed4e303e2f1bdce9edf49e70970f3 (patch)
treeab666c6d15d0a380ee1a8395f0c1dc17e19bf719
parentf5778572b16fd7c5fa7f61166e05d3db1831069a (diff)
Make setting configuration option "replayseconds" optional if "replaymode" != "time".
-rw-r--r--TODO2
-rw-r--r--blabouncer.c3
-rw-r--r--functions.c3
3 files changed, 4 insertions, 4 deletions
diff --git a/TODO b/TODO
index 08e2f32..e60ebb9 100644
--- a/TODO
+++ b/TODO
@@ -1,3 +1 @@
-Make some unnecessary configuration options optional (e.g. replaytime if replaymode != "time")
-
Fuzzing.
diff --git a/blabouncer.c b/blabouncer.c
index 143b366..8f5afad 100644
--- a/blabouncer.c
+++ b/blabouncer.c
@@ -911,7 +911,8 @@ int main(int argc, char *argv[]) {
// How many seconds of replay log should automatically be replayed - TODO - Can we do error checking on this?
settings.replayseconds = getconfint("replayseconds", settings.conffile);
- if (errno == ECONFINT) {
+ // Don't worry if replaymode != "time"
+ if (errno == ECONFINT && strcmp(settings.replaymode, "time") == 0) {
printf("main(): error getting 'replayseconds' from configuration file.\n");
exit(1);
}
diff --git a/functions.c b/functions.c
index a67776f..8bbc213 100644
--- a/functions.c
+++ b/functions.c
@@ -1104,7 +1104,8 @@ int rehash(struct settings *settings, char *failuremsg) {
// How many seconds of replay log should automatically be replayed - TODO - Can we do error checking on this?
int oldreplayseconds = settings->replayseconds;
settings->replayseconds = getconfint("replayseconds", settings->conffile);
- if (errno == ECONFINT) {
+ // Don't worry if replaymode != "time"
+ if (errno == ECONFINT && strcmp(settings->replaymode, "time") == 0) {
settings->replayseconds = oldreplayseconds;
strcpy(failuremsg, "error getting 'replayseconds' from configuration file");
return 0;