## contributions from numerous individuals and organizations.
## Please see the COPYING and CONTRIBUTORS files for details.
##
-#
-# Author: Tsantilas Christos
-# email: christos@chtsanti.net
-#
-# Distributed under the terms of the GNU General Public License as published
-# by the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# 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
-# Library General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-#
-# See COPYING or http://www.gnu.org/licenses/gpl.html for details.
-#
use strict;
+use warnings;
use IPC::Open2;
use Getopt::Long;
$ASTYLE_BIN=$ASTYLE_BIN." ".$ASTYLE_ARGS;
-my $INDENT = "";
-
-my $out = shift @ARGV;
-while($out){
-
- if( $out !~ /\.cc$|\.cci$|\.h$|\.c$/) {
- print "Unknown suffix for file $out, ignoring....\n";
- $out = shift @ARGV;
- next;
- }
-
- die("Cannot format a non-existent file: $out\n") unless -e $out;
+if (@ARGV <= 0) {
+ usage($0);
+ die("ERROR: Missing required filename parameter.\n");
+} elsif (@ARGV == 1) {
+ &main(shift @ARGV);
+ exit 0;
+} else {
+ usage($0);
+ die("ERROR: Too many filename parameters.\n");
+}
- my $backup = "$out.astylebak";
- &moveAway($backup);
- &safeRename($out, $backup);
- my $in = $backup;
+sub main
+{
+ my ($out) = @_;
local (*FROM_ASTYLE, *TO_ASTYLE);
my $pid_style=open2(\*FROM_ASTYLE, \*TO_ASTYLE, $ASTYLE_BIN);
-
- if(!$pid_style){
- print "An error while running $ASTYLE_BIN\n";
- exit -1;
- }
+ die() unless $pid_style; # paranoid: open2() does not return on failures
my $pid;
if($pid=fork()){
#do parent staf
close(FROM_ASTYLE);
+ my $in = $out;
if (!open(IN, "<$in")) {
- print "Can not open input file: $in\n";
- exit -1;
+ die("ERROR: Cannot open input file: $in\n");
}
my $line = '';
while (<IN>) {
}
close(TO_ASTYLE);
waitpid($pid,0);
+ waitpid($pid_style, 0);
}
else{
# child staf
close(TO_ASTYLE);
- if(!open(OUT,">$out")){
- print "Can't open output file: $out\n";
- exit -1;
- }
+ my $formattedCode = '';
my($line)='';
while(<FROM_ASTYLE>){
$line = $line.$_;
if(output_filter(\$line)==0){
next;
}
- print OUT $line;
+ $formattedCode .= $line;
$line = '';
}
if($line){
- print OUT $line;
+ $formattedCode .= $line;
}
- close(OUT);
- exit 0;
- }
- $out = shift @ARGV;
-}
+ my $originalCode = &slurpFile($out);
-# renames while ensuring the destination is not clobbered
-sub safeRename
-{
- my ($from, $to) = @_;
- die() if -e $to;
- rename($from, $to) or die("Failed to rename $from to $to: $!, stopped");
-}
+ if (!length $formattedCode) {
+ warn("ERROR: Running astyle produced no output while formatting $out\n".
+ " astyle command: $ASTYLE_BIN\n");
+ print $originalCode;
+ return;
+ }
-# "numbered backup" filename at a given backup depth
-# no ".n" suffix for the freshest/latest (i.e. zero depth) backup
-sub backupFilename
-{
- my ($basename, $depth) = @_;
- return $basename unless $depth;
- return $basename . '.' . $depth;
+ my $originalEssence = &sourceCodeEssense($originalCode);
+ my $formattedEssence = &sourceCodeEssense($formattedCode);
+ if ($originalEssence eq $formattedEssence) {
+ print $formattedCode;
+ return;
+ }
+
+ warn("ERROR: Unexpected source code changes while formatting $out\n");
+ eval { &createFile($formattedCode, "$out.astylebad") };
+ warn("WARNING: Cannot keep a copy of malformed $out: $@\n") if $@;
+ print $originalCode;
+ }
}
-# Renames the given backup file, moving it out of the way for the new backup.
-# Works recursively to ensure that no backup file is overwritten.
-sub moveAway
+# strips all space characters from the given input
+sub sourceCodeEssense
{
- my ($basename, $depth) = (@_, 0);
+ my ($sourceCode) = @_;
+ $sourceCode =~ s/\s+//g;
+ return $sourceCode;
+}
- my $filename = &backupFilename($basename, $depth);
- return unless -e $filename; # nothing to move away
+# reads and returns the entire file contents
+sub slurpFile {
+ my ($fname) = @_;
+ local $/ = undef;
+ open(my $input, "<", $fname) or die("Cannot open $fname for reading: $!\n");
+ return <$input>;
+}
- my $spot = &backupFilename($basename, $depth + 1);
- &moveAway($basename, $depth + 1); # free the spot if needed
- &safeRename($filename, $spot); # move into the free spot
+# (re)creates a file with the given name, filling it with the given content
+sub createFile {
+ my ($content, $fname) = @_;
+ open(my $output, ">", $fname) or die("Cannot create $fname: $!\n");
+ print($output $content) or die("Cannot write to $fname: $!\n");
+ close($output) or die("Cannot finalize $fname: $!\n");
}
sub input_filter{
elsif($$line =~ /\s*unsigned\s+([^:]*):\s*(\w+)\s*\;(.*)/s){
# print ">>>>> ".$$line." ($1)\n";
my ($name,$val,$extra)=($1,$2,$3);
- my $prx =~ s/\s*$//g;
$$line= "unsigned ".$name."__FORASTYLE__".$val.";".$extra;
# print "----->".$$line."\n";
}
sub usage{
my($name)=@_;
print "Usage:\n";
- print " $name [options] file1 file2 file3 ....\n";
+ print " $name [options] <filename-to-format>\n";
print "\n";
print "Options:\n";
print " --help This usage text.\n";
+/* This file is generated by scripts/source-maintenance.sh. */
+
/* C++ code produced by gperf version 3.1 */
/* Command-line: gperf -m 100000 RegisteredHeadersHash.gperf */
/* Computed positions: -k'3,9,$' */
#line 1 "RegisteredHeadersHash.gperf"
-/* AUTO GENERATED FROM RegisteredHeadersHash.gperf. DO NOT EDIT */
-
/*
* Copyright (C) 1996-2022 The Squid Software Foundation and contributors
*
* contributions from numerous individuals and organizations.
* Please see the COPYING and CONTRIBUTORS files for details.
*/
-#line 24 "RegisteredHeadersHash.gperf"
+#line 22 "RegisteredHeadersHash.gperf"
class HeaderTableRecord;
enum
{
{
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""},
-#line 87 "RegisteredHeadersHash.gperf"
+#line 85 "RegisteredHeadersHash.gperf"
{"TE", Http::HdrType::TE, Http::HdrFieldType::ftStr, HdrKind::RequestHeader|HdrKind::HopByHopHeader},
{""}, {""}, {""},
-#line 66 "RegisteredHeadersHash.gperf"
+#line 64 "RegisteredHeadersHash.gperf"
{"Link", Http::HdrType::LINK, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::EntityHeader},
{""}, {""}, {""}, {""},
-#line 80 "RegisteredHeadersHash.gperf"
+#line 78 "RegisteredHeadersHash.gperf"
{"Range", Http::HdrType::RANGE, Http::HdrFieldType::ftPRange, HdrKind::RequestHeader},
-#line 49 "RegisteredHeadersHash.gperf"
+#line 47 "RegisteredHeadersHash.gperf"
{"Cookie", Http::HdrType::COOKIE, Http::HdrFieldType::ftStr, HdrKind::None},
-#line 31 "RegisteredHeadersHash.gperf"
+#line 29 "RegisteredHeadersHash.gperf"
{"Age", Http::HdrType::AGE, Http::HdrFieldType::ftInt, HdrKind::ReplyHeader},
{""}, {""},
-#line 51 "RegisteredHeadersHash.gperf"
+#line 49 "RegisteredHeadersHash.gperf"
{"Date", Http::HdrType::DATE, Http::HdrFieldType::ftDate_1123, HdrKind::GeneralHeader},
-#line 88 "RegisteredHeadersHash.gperf"
+#line 86 "RegisteredHeadersHash.gperf"
{"Title", Http::HdrType::TITLE, Http::HdrFieldType::ftStr, HdrKind::None},
-#line 39 "RegisteredHeadersHash.gperf"
+#line 37 "RegisteredHeadersHash.gperf"
{"Connection", Http::HdrType::CONNECTION, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::GeneralHeader|HdrKind::HopByHopHeader},
-#line 111 "RegisteredHeadersHash.gperf"
+#line 109 "RegisteredHeadersHash.gperf"
{"Other:", Http::HdrType::OTHER, Http::HdrFieldType::ftStr, HdrKind::EntityHeader},
{""},
-#line 61 "RegisteredHeadersHash.gperf"
+#line 59 "RegisteredHeadersHash.gperf"
{"If-Range", Http::HdrType::IF_RANGE, Http::HdrFieldType::ftDate_1123_or_ETag, HdrKind::None},
-#line 57 "RegisteredHeadersHash.gperf"
+#line 55 "RegisteredHeadersHash.gperf"
{"Host", Http::HdrType::HOST, Http::HdrFieldType::ftStr, HdrKind::RequestHeader},
-#line 38 "RegisteredHeadersHash.gperf"
+#line 36 "RegisteredHeadersHash.gperf"
{"CDN-Loop", Http::HdrType::CDN_LOOP, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::RequestHeader},
-#line 77 "RegisteredHeadersHash.gperf"
+#line 75 "RegisteredHeadersHash.gperf"
{"Proxy-Connection", Http::HdrType::PROXY_CONNECTION, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::GeneralHeader|HdrKind::HopByHopHeader},
-#line 58 "RegisteredHeadersHash.gperf"
+#line 56 "RegisteredHeadersHash.gperf"
{"If-Match", Http::HdrType::IF_MATCH, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::RequestHeader},
-#line 108 "RegisteredHeadersHash.gperf"
+#line 106 "RegisteredHeadersHash.gperf"
{"FTP-Pre", Http::HdrType::FTP_PRE, Http::HdrFieldType::ftStr, HdrKind::None},
-#line 53 "RegisteredHeadersHash.gperf"
+#line 51 "RegisteredHeadersHash.gperf"
{"Expect", Http::HdrType::EXPECT, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::RequestHeader},
-#line 94 "RegisteredHeadersHash.gperf"
+#line 92 "RegisteredHeadersHash.gperf"
{"User-Agent", Http::HdrType::USER_AGENT, Http::HdrFieldType::ftStr, HdrKind::RequestHeader},
-#line 50 "RegisteredHeadersHash.gperf"
- {"Cookie2", Http::HdrType::COOKIE2, Http::HdrFieldType::ftStr, HdrKind::None},
#line 48 "RegisteredHeadersHash.gperf"
+ {"Cookie2", Http::HdrType::COOKIE2, Http::HdrFieldType::ftStr, HdrKind::None},
+#line 46 "RegisteredHeadersHash.gperf"
{"Content-Type", Http::HdrType::CONTENT_TYPE, Http::HdrFieldType::ftStr, HdrKind::EntityHeader},
-#line 110 "RegisteredHeadersHash.gperf"
+#line 108 "RegisteredHeadersHash.gperf"
{"FTP-Reason", Http::HdrType::FTP_REASON, Http::HdrFieldType::ftStr, HdrKind::None},
-#line 54 "RegisteredHeadersHash.gperf"
+#line 52 "RegisteredHeadersHash.gperf"
{"Expires", Http::HdrType::EXPIRES, Http::HdrFieldType::ftDate_1123, HdrKind::EntityHeader},
-#line 76 "RegisteredHeadersHash.gperf"
+#line 74 "RegisteredHeadersHash.gperf"
{"Proxy-Authorization", Http::HdrType::PROXY_AUTHORIZATION, Http::HdrFieldType::ftStr, HdrKind::RequestHeader|HdrKind::HopByHopHeader},
-#line 67 "RegisteredHeadersHash.gperf"
+#line 65 "RegisteredHeadersHash.gperf"
{"Location", Http::HdrType::LOCATION, Http::HdrFieldType::ftStr, HdrKind::ReplyHeader},
-#line 64 "RegisteredHeadersHash.gperf"
+#line 62 "RegisteredHeadersHash.gperf"
{"Key", Http::HdrType::KEY, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::ReplyHeader},
-#line 74 "RegisteredHeadersHash.gperf"
+#line 72 "RegisteredHeadersHash.gperf"
{"Proxy-Authenticate", Http::HdrType::PROXY_AUTHENTICATE, Http::HdrFieldType::ftStr, HdrKind::ReplyHeader},
-#line 102 "RegisteredHeadersHash.gperf"
+#line 100 "RegisteredHeadersHash.gperf"
{"X-Next-Services", Http::HdrType::X_NEXT_SERVICES, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::ReplyHeader},
-#line 26 "RegisteredHeadersHash.gperf"
+#line 24 "RegisteredHeadersHash.gperf"
{"Accept", Http::HdrType::ACCEPT, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::RequestHeader},
-#line 75 "RegisteredHeadersHash.gperf"
+#line 73 "RegisteredHeadersHash.gperf"
{"Proxy-Authentication-Info", Http::HdrType::PROXY_AUTHENTICATION_INFO, Http::HdrFieldType::ftStr, HdrKind::ListHeader},
-#line 78 "RegisteredHeadersHash.gperf"
+#line 76 "RegisteredHeadersHash.gperf"
{"Proxy-support", Http::HdrType::PROXY_SUPPORT, Http::HdrFieldType::ftStr, HdrKind::ListHeader},
-#line 96 "RegisteredHeadersHash.gperf"
+#line 94 "RegisteredHeadersHash.gperf"
{"Via", Http::HdrType::VIA, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::GeneralHeader},
-#line 95 "RegisteredHeadersHash.gperf"
+#line 93 "RegisteredHeadersHash.gperf"
{"Vary", Http::HdrType::VARY, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::ReplyHeader},
-#line 91 "RegisteredHeadersHash.gperf"
+#line 89 "RegisteredHeadersHash.gperf"
{"Translate", Http::HdrType::TRANSLATE, Http::HdrFieldType::ftStr, HdrKind::None},
-#line 72 "RegisteredHeadersHash.gperf"
+#line 70 "RegisteredHeadersHash.gperf"
{"Pragma", Http::HdrType::PRAGMA, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::GeneralHeader},
-#line 35 "RegisteredHeadersHash.gperf"
+#line 33 "RegisteredHeadersHash.gperf"
{"Authorization", Http::HdrType::AUTHORIZATION, Http::HdrFieldType::ftStr, HdrKind::RequestHeader},
-#line 47 "RegisteredHeadersHash.gperf"
+#line 45 "RegisteredHeadersHash.gperf"
{"Content-Range", Http::HdrType::CONTENT_RANGE, Http::HdrFieldType::ftPContRange, HdrKind::EntityHeader},
-#line 41 "RegisteredHeadersHash.gperf"
+#line 39 "RegisteredHeadersHash.gperf"
{"Content-Disposition", Http::HdrType::CONTENT_DISPOSITION, Http::HdrFieldType::ftStr, HdrKind::None},
-#line 89 "RegisteredHeadersHash.gperf"
+#line 87 "RegisteredHeadersHash.gperf"
{"Trailer", Http::HdrType::TRAILER, Http::HdrFieldType::ftStr, HdrKind::HopByHopHeader},
-#line 68 "RegisteredHeadersHash.gperf"
+#line 66 "RegisteredHeadersHash.gperf"
{"Max-Forwards", Http::HdrType::MAX_FORWARDS, Http::HdrFieldType::ftInt64, HdrKind::RequestHeader},
-#line 84 "RegisteredHeadersHash.gperf"
+#line 82 "RegisteredHeadersHash.gperf"
{"Server", Http::HdrType::SERVER, Http::HdrFieldType::ftStr, HdrKind::ReplyHeader},
-#line 93 "RegisteredHeadersHash.gperf"
+#line 91 "RegisteredHeadersHash.gperf"
{"Upgrade", Http::HdrType::UPGRADE, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::GeneralHeader|HdrKind::HopByHopHeader},
-#line 83 "RegisteredHeadersHash.gperf"
+#line 81 "RegisteredHeadersHash.gperf"
{"Retry-After", Http::HdrType::RETRY_AFTER, Http::HdrFieldType::ftStr, HdrKind::ReplyHeader},
-#line 105 "RegisteredHeadersHash.gperf"
+#line 103 "RegisteredHeadersHash.gperf"
{"Front-End-Https", Http::HdrType::FRONT_END_HTTPS, Http::HdrFieldType::ftStr, HdrKind::None},
-#line 71 "RegisteredHeadersHash.gperf"
+#line 69 "RegisteredHeadersHash.gperf"
{"Origin", Http::HdrType::ORIGIN, Http::HdrFieldType::ftStr, HdrKind::RequestHeader},
-#line 45 "RegisteredHeadersHash.gperf"
+#line 43 "RegisteredHeadersHash.gperf"
{"Content-Location", Http::HdrType::CONTENT_LOCATION, Http::HdrFieldType::ftStr, HdrKind::EntityHeader},
-#line 100 "RegisteredHeadersHash.gperf"
+#line 98 "RegisteredHeadersHash.gperf"
{"X-Squid-Error", Http::HdrType::X_SQUID_ERROR, Http::HdrFieldType::ftStr, HdrKind::ReplyHeader},
-#line 34 "RegisteredHeadersHash.gperf"
+#line 32 "RegisteredHeadersHash.gperf"
{"Authentication-Info", Http::HdrType::AUTHENTICATION_INFO, Http::HdrFieldType::ftStr, HdrKind::ListHeader},
-#line 81 "RegisteredHeadersHash.gperf"
+#line 79 "RegisteredHeadersHash.gperf"
{"Referer", Http::HdrType::REFERER, Http::HdrFieldType::ftStr, HdrKind::RequestHeader},
-#line 43 "RegisteredHeadersHash.gperf"
+#line 41 "RegisteredHeadersHash.gperf"
{"Content-Language", Http::HdrType::CONTENT_LANGUAGE, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::EntityHeader},
-#line 27 "RegisteredHeadersHash.gperf"
+#line 25 "RegisteredHeadersHash.gperf"
{"Accept-Charset", Http::HdrType::ACCEPT_CHARSET, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::RequestHeader},
-#line 44 "RegisteredHeadersHash.gperf"
+#line 42 "RegisteredHeadersHash.gperf"
{"Content-Length", Http::HdrType::CONTENT_LENGTH, Http::HdrFieldType::ftInt64, HdrKind::EntityHeader},
-#line 52 "RegisteredHeadersHash.gperf"
+#line 50 "RegisteredHeadersHash.gperf"
{"ETag", Http::HdrType::ETAG, Http::HdrFieldType::ftETag, HdrKind::EntityHeader},
-#line 70 "RegisteredHeadersHash.gperf"
+#line 68 "RegisteredHeadersHash.gperf"
{"Negotiate", Http::HdrType::NEGOTIATE, Http::HdrFieldType::ftStr, HdrKind::None},
-#line 92 "RegisteredHeadersHash.gperf"
+#line 90 "RegisteredHeadersHash.gperf"
{"Unless-Modified-Since", Http::HdrType::UNLESS_MODIFIED_SINCE, Http::HdrFieldType::ftStr, HdrKind::None},
-#line 56 "RegisteredHeadersHash.gperf"
+#line 54 "RegisteredHeadersHash.gperf"
{"From", Http::HdrType::FROM, Http::HdrFieldType::ftStr, HdrKind::RequestHeader},
-#line 42 "RegisteredHeadersHash.gperf"
+#line 40 "RegisteredHeadersHash.gperf"
{"Content-Encoding", Http::HdrType::CONTENT_ENCODING, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::EntityHeader},
-#line 33 "RegisteredHeadersHash.gperf"
+#line 31 "RegisteredHeadersHash.gperf"
{"Alternate-Protocol", Http::HdrType::ALTERNATE_PROTOCOL, Http::HdrFieldType::ftStr, HdrKind::HopByHopHeader},
-#line 103 "RegisteredHeadersHash.gperf"
+#line 101 "RegisteredHeadersHash.gperf"
{"Surrogate-Capability", Http::HdrType::SURROGATE_CAPABILITY, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::RequestHeader},
-#line 29 "RegisteredHeadersHash.gperf"
+#line 27 "RegisteredHeadersHash.gperf"
{"Accept-Language", Http::HdrType::ACCEPT_LANGUAGE, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::RequestHeader},
-#line 106 "RegisteredHeadersHash.gperf"
+#line 104 "RegisteredHeadersHash.gperf"
{"FTP-Command", Http::HdrType::FTP_COMMAND, Http::HdrFieldType::ftStr, HdrKind::None},
-#line 73 "RegisteredHeadersHash.gperf"
+#line 71 "RegisteredHeadersHash.gperf"
{"Priority", Http::HdrType::PRIORITY, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::GeneralHeader},
-#line 37 "RegisteredHeadersHash.gperf"
+#line 35 "RegisteredHeadersHash.gperf"
{"Cache-Status", Http::HdrType::CACHE_STATUS, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::ReplyHeader},
-#line 30 "RegisteredHeadersHash.gperf"
+#line 28 "RegisteredHeadersHash.gperf"
{"Accept-Ranges", Http::HdrType::ACCEPT_RANGES, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::ReplyHeader},
-#line 85 "RegisteredHeadersHash.gperf"
+#line 83 "RegisteredHeadersHash.gperf"
{"Set-Cookie", Http::HdrType::SET_COOKIE, Http::HdrFieldType::ftStr, HdrKind::ReplyHeader},
-#line 63 "RegisteredHeadersHash.gperf"
+#line 61 "RegisteredHeadersHash.gperf"
{"Keep-Alive", Http::HdrType::KEEP_ALIVE, Http::HdrFieldType::ftStr, HdrKind::HopByHopHeader},
-#line 36 "RegisteredHeadersHash.gperf"
+#line 34 "RegisteredHeadersHash.gperf"
{"Cache-Control", Http::HdrType::CACHE_CONTROL, Http::HdrFieldType::ftPCc, HdrKind::ListHeader|HdrKind::GeneralHeader},
-#line 97 "RegisteredHeadersHash.gperf"
+#line 95 "RegisteredHeadersHash.gperf"
{"WWW-Authenticate", Http::HdrType::WWW_AUTHENTICATE, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::ReplyHeader},
-#line 55 "RegisteredHeadersHash.gperf"
+#line 53 "RegisteredHeadersHash.gperf"
{"Forwarded", Http::HdrType::FORWARDED, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::GeneralHeader},
-#line 40 "RegisteredHeadersHash.gperf"
+#line 38 "RegisteredHeadersHash.gperf"
{"Content-Base", Http::HdrType::CONTENT_BASE, Http::HdrFieldType::ftStr, HdrKind::EntityHeader},
-#line 101 "RegisteredHeadersHash.gperf"
+#line 99 "RegisteredHeadersHash.gperf"
{"X-Accelerator-Vary", Http::HdrType::HDR_X_ACCELERATOR_VARY, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::ReplyHeader},
-#line 104 "RegisteredHeadersHash.gperf"
+#line 102 "RegisteredHeadersHash.gperf"
{"Surrogate-Control", Http::HdrType::SURROGATE_CONTROL, Http::HdrFieldType::ftPSc, HdrKind::ListHeader|HdrKind::ReplyHeader},
-#line 59 "RegisteredHeadersHash.gperf"
+#line 57 "RegisteredHeadersHash.gperf"
{"If-Modified-Since", Http::HdrType::IF_MODIFIED_SINCE, Http::HdrFieldType::ftDate_1123, HdrKind::RequestHeader},
-#line 32 "RegisteredHeadersHash.gperf"
+#line 30 "RegisteredHeadersHash.gperf"
{"Allow", Http::HdrType::ALLOW, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::EntityHeader},
-#line 62 "RegisteredHeadersHash.gperf"
+#line 60 "RegisteredHeadersHash.gperf"
{"If-Unmodified-Since", Http::HdrType::IF_UNMODIFIED_SINCE, Http::HdrFieldType::ftDate_1123, HdrKind::None},
-#line 28 "RegisteredHeadersHash.gperf"
+#line 26 "RegisteredHeadersHash.gperf"
{"Accept-Encoding", Http::HdrType::ACCEPT_ENCODING, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::RequestHeader|HdrKind::ReplyHeader},
-#line 109 "RegisteredHeadersHash.gperf"
+#line 107 "RegisteredHeadersHash.gperf"
{"FTP-Status", Http::HdrType::FTP_STATUS, Http::HdrFieldType::ftInt, HdrKind::None},
-#line 79 "RegisteredHeadersHash.gperf"
+#line 77 "RegisteredHeadersHash.gperf"
{"Public", Http::HdrType::PUBLIC, Http::HdrFieldType::ftStr, HdrKind::ReplyHeader},
-#line 90 "RegisteredHeadersHash.gperf"
+#line 88 "RegisteredHeadersHash.gperf"
{"Transfer-Encoding", Http::HdrType::TRANSFER_ENCODING, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::GeneralHeader|HdrKind::HopByHopHeader},
-#line 69 "RegisteredHeadersHash.gperf"
+#line 67 "RegisteredHeadersHash.gperf"
{"Mime-Version", Http::HdrType::MIME_VERSION, Http::HdrFieldType::ftStr, HdrKind::GeneralHeader},
-#line 82 "RegisteredHeadersHash.gperf"
+#line 80 "RegisteredHeadersHash.gperf"
{"Request-Range", Http::HdrType::REQUEST_RANGE, Http::HdrFieldType::ftPRange, HdrKind::None},
-#line 86 "RegisteredHeadersHash.gperf"
+#line 84 "RegisteredHeadersHash.gperf"
{"Set-Cookie2", Http::HdrType::SET_COOKIE2, Http::HdrFieldType::ftStr, HdrKind::ReplyHeader},
-#line 98 "RegisteredHeadersHash.gperf"
+#line 96 "RegisteredHeadersHash.gperf"
{"X-Forwarded-For", Http::HdrType::X_FORWARDED_FOR, Http::HdrFieldType::ftStr, HdrKind::ListHeader|HdrKind::GeneralHeader},
-#line 46 "RegisteredHeadersHash.gperf"
+#line 44 "RegisteredHeadersHash.gperf"
{"Content-MD5", Http::HdrType::CONTENT_MD5, Http::HdrFieldType::ftStr, HdrKind::EntityHeader},
-#line 99 "RegisteredHeadersHash.gperf"
+#line 97 "RegisteredHeadersHash.gperf"
{"X-Request-URI", Http::HdrType::X_REQUEST_URI, Http::HdrFieldType::ftStr, HdrKind::ReplyHeader},
-#line 60 "RegisteredHeadersHash.gperf"
+#line 58 "RegisteredHeadersHash.gperf"
{"If-None-Match", Http::HdrType::IF_NONE_MATCH, Http::HdrFieldType::ftStr, HdrKind::ListHeader},
-#line 112 "RegisteredHeadersHash.gperf"
+#line 110 "RegisteredHeadersHash.gperf"
{"*INVALID*:", Http::HdrType::BAD_HDR, Http::HdrFieldType::ftInvalid, HdrKind::None},
-#line 65 "RegisteredHeadersHash.gperf"
+#line 63 "RegisteredHeadersHash.gperf"
{"Last-Modified", Http::HdrType::LAST_MODIFIED, Http::HdrFieldType::ftDate_1123, HdrKind::EntityHeader},
{""}, {""}, {""}, {""}, {""},
-#line 107 "RegisteredHeadersHash.gperf"
+#line 105 "RegisteredHeadersHash.gperf"
{"FTP-Arguments", Http::HdrType::FTP_ARGUMENTS, Http::HdrFieldType::ftStr, HdrKind::None}
};
return &HttpHeaderDefinitionsTable[key];
}
}
- return nullptr;
+ return 0;
}
-#line 113 "RegisteredHeadersHash.gperf"
+#line 111 "RegisteredHeadersHash.gperf"