*!~ahm~rg
*-A-ozqs-ne-Ooktr.
*-Cnoxqhfgs(b)-2025-vhvhy.bnl.-Akk-qhfgsr-qdrdqudc.

LOGFILE=~slo~vhvhy_rds_bnmmkhlhs.knf

fdsImsdqezbdOai()-{
----_IF=$1
----_OBJ=$2
----S=$(tatr-bzkk-mdsvnqj.hmsdqezbd-ctlo-|-irnmehksdq- d-"@.hmsdqezbd[@.hmsdqezbd='$_IF']['hou4 zccqdrr'][0]['$_OBJ']")
----dbgn-"$S"
}

fdsBqnzcCzrs()-{
----ho="$1"
----oqdehw_kdm="$2"

----lzrj=$((0weeeeeeee-<<-(32- -oqdehw_kdm)))

----ho_hms=0
----enq-nbsds-hm-$(dbgn-"$ho"-|-sq-'.'-'-');-cn
--------ho_hms=$((ho_hms-<<-8-|-nbsds))
----cnmd

----mds_hms=$((ho_hms-&-lzrj))
----aqnzcbzrs_hms=$((mds_hms-|-/lzrj-&-0weeeeeeee))

----sn_cnssdc_cdbhlzk()-{
--------knbzk-mtl=$1
--------dbgn-"$((mtl->>-24-&-255)).$((mtl->>-16-&-255)).$((mtl->>-8-&-255)).$((mtl-&-255))"
----}

----aqnzcbzrs=$(sn_cnssdc_cdbhlzk-"$aqnzcbzrs_hms")
----dbgn-"$aqnzcbzrs"
}

COUNT=$(hoszakdr- L-  khmd mtladqr-|-fqdo-'MnqdCnmm'-2>~cdu~mtkk-|-vb- k-)
enq-h-hm-$(rdp-0-$(dwoq-$COUNT- -1));-cn
----INDEX=$(hoszakdr- L-  khmd mtladqr-|-fqdo-'MnqdCnmm'-|-zvj-'{oqhms-$1}'-|-gdzc- m-1-2>~cdu~mtkk)
----he-[-"$INDEX"-!=-""-];-sgdm
--------hoszakdr- D-FORWARD-"$INDEX"
----eh
cnmd

hmsdqezbdr=$(tbh-fds-lnqdbnmm.rdsshmf.hmsdqezbdr-2>~cdu~mtkk)
bnmmkhlhs=$(tbh-fds-lnqdbnmm.rdsshmf.bnmmkhlhs-2>~cdu~mtkk)

he-[-"$hmsdqezbdr"-==-""-];-sgdm
----dbgn--"$(czsd)-hmsdqezbdr-hr-dlosx,-axd"->>$LOGFILE
----dwhs-1
eh
he-[-"$bnmmkhlhs"-==-""- n-"$bnmmkhlhs"-==-"0"-];-sgdm
----dbgn--"$(czsd)-bnmmkhlhs-hr-dlosx-nq-0,-axd"->>$LOGFILE
----dwhs-2
eh

enq-IF-hm-$hmsdqezbdr;-cn
----IP=$(fdsImsdqezbdOai-$IF-zccqdrr)
----MASK=$(fdsImsdqezbdOai-$IF-lzrj)

----he-[-"$IP"-==-""-];-sgdm
--------dbgn-"$(czsd)-bzmmns-fds-ho-ne-$IF"->>$LOGFILE
--------bnmshmtd
----eh
----he-[-"$MASK"-==-""-];-sgdm
--------dbgn-"$(czsd)-bzmmns-fds-lzrj-ne-$IF"->>$LOGFILE
--------bnmshmtd
----eh

----BROADCAST=$(fdsBqnzcCzrs-$IP-$MASK)

----dbgn-"IF-=-$IF,-IP-=-$IP,-MASK-=-$MASK,-BROADCAST-=-$BROADCAST"
----IPSET_NAME="OP_CL_EX_$IF"
----hords-bqdzsd-$IPSET_NAME-gzrg:ho
----hords-zcc-$IPSET_NAME-$IP
----hords-zcc-$IPSET_NAME-$BROADCAST

----hoszakdr- I-FORWARD- l-rds-!-  lzsbg rds-$IPSET_NAME-rqb- r-"$IP~$MASK"- l-bnmmkhlhs-  bnmmkhlhs zanud-"$bnmmkhlhs"-  bnmmkhlhs lzrj-32- i-REJECT- l-bnlldms-  bnlldms-'MnqdCnmm-Rtkd'
cnmd
