Slide 24
Slide 24 text
Your own server
v
a
r (
c
o
u
n
t
e
r i
n
t
p
o
r
t = 9
0
0
0
)
f
u
n
c c
o
u
n
t
(
w h
t
t
p
.
R
e
s
p
o
n
s
e
W
r
i
t
e
r
, r *
h
t
t
p
.
R
e
q
u
e
s
t
) {
c
o
u
n
t
e
r
+
+
}
f
u
n
c s
t
a
t
s
(
w h
t
t
p
.
R
e
s
p
o
n
s
e
W
r
i
t
e
r
, r *
h
t
t
p
.
R
e
q
u
e
s
t
) {
w
.
W
r
i
t
e
(
[
]
b
y
t
e
(
f
m
t
.
S
p
r
i
n
t
f
(
"
V
i
s
i
t
s
: %
d
"
, c
o
u
n
t
e
r
)
)
)
}
f
u
n
c m
a
i
n
(
) {
/
/
h
t
t
p
.
H
a
n
d
l
e
F
u
n
c
(
"
/
f
a
v
i
c
o
n
.
i
c
o
"
, f
u
n
c
(
_ h
t
t
p
.
R
e
s
p
o
n
s
e
W
r
i
t
e
r
, _ *
h
t
t
p
.
R
e
q
u
e
s
t
) {
}
)
h
t
t
p
.
H
a
n
d
l
e
F
u
n
c
(
"
/
"
, c
o
u
n
t
)
h
t
t
p
.
H
a
n
d
l
e
F
u
n
c
(
"
/
s
t
a
t
s
"
, s
t
a
t
s
)
l
o
g
.
P
r
i
n
t
l
n
(
"
L
i
s
t
e
n
i
n
g a
t p
o
r
t "
, p
o
r
t
)
l
o
g
.
P
a
n
i
c
(
h
t
t
p
.
L
i
s
t
e
n
A
n
d
S
e
r
v
e
(
f
m
t
.
S
p
r
i
n
t
f
(
"
:
%
d
"
, p
o
r
t
)
, n
i
l
)
)
} Run