1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
alias content {
var %n = sockwrite -n $1
if ($fopen(SiteRead)) .fclose SiteRead
.fopen SiteRead site/index.html
if (!$ferr) {
while (!$feof) {
var %line = $fread(SiteRead)
if (%line == <img src="index_02.jpg">) { image $1 }
%n %line
}
.fclose SiteRead
sockclose $1
echo -a closed
}
}
alias image {
var %file = index_02.jpg
var %size = $iif($file(%file).size < $calc(16384-$sock($1).sq),$v1,$v2)
bread $qt(%file) 0 %size &data
sockwrite -b $1 %size &data
sockmark $1 %size %file
}
on *:sockwrite:web*: {
if ($sock($sockname).mark) var %size = $gettok($v1,1,32), %file = $gettok($v1,2-,32)
else { sockclose $sockname | return }
var %left = $file(%file).size - %size
var %read = $iif(%left < $calc(16384-$sock($sockname).sq),$v1,$v2)
if (%left == 0) { if (!$sock($sockname).sq) sockclose $sockname | return }
bread $qt(%file) $calc(%size - 1) %read &data
sockwrite -b $sockname %read &data
sockmark $sockname $calc(%size + %read) %file
}
|