On Sun, Jul 20, 2025 at 01:47:16PM -0000, Stuart Henderson wrote: > welcome to relayd ;)
thanks!
I gave look at the source code and finally understand when I was lost:
the manual says:
Tables
Table definitions describe a list of hosts, in a similar fashion to
pf(4) tables. They are used for relay, redirection, and router
target selection with the described options and health checking on
the host they contain.
As I don't know pf, my brain focus on what I already know ("a list of hosts")
but tables are more than tags:
table <bb> {prometheus}
table <default> {prometheus}
those are not the same list even if they are equal. because in the
relay:
relay katzele {
listen on vio0 port 8200
protocol katzele
forward to <bb> port 8200
forward to <default> port 80
}
the line
forward to <bb> port 8200
means "if something was passed to bb, forward with those options".
and in the protocol:
http protocol katzele {
pass request quick \
header "Host" value "something.codelib.re" \
forward to <bb>
pass forward to <default>
}
"quick" is like "return" in a programming langage: we're done searching
for what to do with the thing. so what we wrote here is:
if ( header "Host" value "something.codelib.re" )
return forward to <bb>
)
return forward to <default>
thanks everyone for helping!
regards
Marc
signature.asc
Description: PGP signature

