#!/bin/bash # IngRRD (https://forge.riquer.fr/p/ingrrd/) # Copyright (C) 2014-2015 Vincent Riquer # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as # published by the Free Software Foundation, either version 3 of the # License, or (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Affero General Public License for more details. # # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see . send_headers() { local timestamp do_exit header thisdate expiredate read timestamp < <(stat -c %Y $0 settings "$rrdfile" lib/* .importing 2>/dev/null|sort -r) thisdate=$(LC_ALL=C TZ=GMT date +'%a, %d %b %Y %X %Z' -d @$timestamp) expiredate=$(LC_ALL=C TZ=GMT date +'%a, %d %b %Y %X %Z' -d "+${1:-60} second") if [[ $thisdate == $HTTP_IF_MODIFIED_SINCE ]] then echo "Status: 304 Not Modified" do_exit=1 fi echo "Last-Modified: $thisdate" echo "Expires: $expiredate" echo "Cache-Control: must-revalidate, max-age=${1:-60}" while read header do echo "$header" done echo (( do_exit )) && exit }