AWS-Lambda
view release on metacpan or search on metacpan
examples/cgi/WwwCounter/gifcat.pl view on Meta::CPAN
sub ApplicationExtension {
$ExtensionIntroducer = ord(substr($buf, $cnt, 1)); $cnt++;
$ExtentionLabel = ord(substr($buf, $cnt, 1)); $cnt++;
$BlockSize = ord(substr($buf, $cnt, 1)); $cnt++;
$ApplicationIdentifire = substr($buf, $cnt, 8); $cnt += 8;
$ApplicationAuthenticationCode = substr($buf, $cnt, 3); $cnt += 3;
&DataSubBlock();
if ($pflag) {
printf("=====================================\n");
printf("Application Extension\n");
printf("=====================================\n");
printf("Extension Introducer: 0x%02x\n",
$ExtensionIntroducer);
printf("Extension Label: 0x%02x\n",
$PlainTextLabel);
printf("Block Size: 0x%02x\n",
$BlockSize);
printf("Application Identifire: ...\n");
printf("ApplicationAuthenticationCode: ...\n");
printf("Block Terminator: 0x00\n");
}
}
;# =====================================
;# Trailer
;# =====================================
sub Trailer {
$cnt++;
if ($pflag) {
printf("=====================================\n");
printf("Trailer\n");
printf("=====================================\n");
printf("Trailer: 0x3b\n");
printf("\n");
}
}
;# =====================================
;# Data Sub Block
;# =====================================
sub DataSubBlock {
local($n, $from);
$from = $cnt;
while ($n = ord(substr($buf, $cnt, 1))) {
$cnt++;
$cnt += $n;
}
$cnt++;
return(substr($buf, $from, $cnt - $from));
}
;# =====================================
;# Memory Dump
;# =====================================
sub Dump {
local($buf) = @_;
my($i);
if (length($buf) == 0) {
return;
}
for ($i = 0; $i < length($buf); $i++) {
if (($i % 16) == 0) {
printf(" ");
}
printf("%02X ", ord(substr($buf, $i, 1)));
if (($i % 16) == 15) {
printf("\n");
}
}
if (($i % 16) != 0) {
printf("\n");
}
}
1;
( run in 0.532 second using v1.01-cache-2.11-cpan-140bd7fdf52 )