diff options
author | Jose Bollo <jose.bollo@iot.bzh> | 2019-10-09 18:40:39 +0200 |
---|---|---|
committer | José Bollo <jose.bollo@iot.bzh> | 2019-10-15 22:06:24 +0200 |
commit | b5fdd44014207c619b937e5c202ba27e77a2593c (patch) | |
tree | 37707b622fbf3a85d87436001c4a7cb196447067 /src/cynagora.c | |
parent | d719343871969bd06f575b870d28296504433b55 (diff) |
Add no-caching feature
Signed-off-by: Jose Bollo <jose.bollo@iot.bzh>
Diffstat (limited to 'src/cynagora.c')
-rw-r--r-- | src/cynagora.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/cynagora.c b/src/cynagora.c index ee55dc6..4434d89 100644 --- a/src/cynagora.c +++ b/src/cynagora.c @@ -363,10 +363,12 @@ status_check( else rc = -EPROTO; - if (cynagora->reply.count >= 2) - *expire = strtoll(cynagora->reply.fields[1], NULL, 10); - else + if (cynagora->reply.count < 2) *expire = 0; + else if (cynagora->reply.fields[1][0] == '-') + *expire = -1; + else + *expire = strtoll(cynagora->reply.fields[1], NULL, 10); return rc; } @@ -553,7 +555,7 @@ check_or_test( rc = wait_pending_reply(cynagora); if (rc >= 0) { rc = status_check(cynagora, &expire); - if (rc >= 0 && action == _check_ && cynagora->cache) + if (rc >= 0 && action == _check_) cache_put(cynagora->cache, key, rc, expire); } } |