| #!/usr/bin/perl |
| |
| |
| sub stringify { |
| my $name = shift(@_); |
| open(OUTPUTC, "> $name.c"); |
| open(OUTPUTH, "> $name.h"); |
| |
| open(FILE, "$name"); |
| |
| while(<FILE>) { |
| if(/(.+) "(.+)"/) { |
| $var = $1; |
| $data = $2; |
| |
| $datan = $data; |
| $datan =~ s/\\r/\r/g; |
| $datan =~ s/\\n/\n/g; |
| $datan =~ s/\\0/\0/g; |
| |
| printf(OUTPUTC "const char $var\[%d] = \n", length($datan) + 1); |
| printf(OUTPUTC "/* \"$data\" */\n"); |
| printf(OUTPUTC "{"); |
| for($j = 0; $j < length($datan); $j++) { |
| printf(OUTPUTC "%#02x, ", unpack("C", substr($datan, $j, 1))); |
| } |
| printf(OUTPUTC "};\n"); |
| |
| printf(OUTPUTH "extern const char $var\[%d];\n", length($datan) + 1); |
| |
| } |
| } |
| close(OUTPUTC); |
| close(OUTPUTH); |
| } |
| stringify("http-user-agent-string"); |
| |
| exit 0; |
| |