SOCKS5-portøkir eru tveir tekinleysir bytir í netverksbyta-røð: tann mest týðandi bytin kemur fyrst. Í Go kodar tú eitt longu dagført uint16 beinleiðis:

var field [2]byte
binary.BigEndian.PutUint16(field[:], port)

Innflyt encoding/binary. Fyri port 1080 eru úrslitandi hexadesimalu bytirnir 04 38. Fyri port 4 eru teir 00 04; ein leiðandi null er partur av økinum við føstum breidd.

Um inntakið byrjar sum eitt størri heiltal ella strong, vátta tá tøl-økið áðrenn tú umskarpar til uint16. Umskapan kann slíkja hægri bitini í staðin fyri at melda eitt virði uttanfyri økið.

Í einum SOCKS5-svar skalt tú serialisera BND.PORT, bundið portøki tænarans. Avrita ikki umbidna máportið inn í tað økið bara tí bæði taka tveir bytir. Set kodada økið eftir adressuni í svarinum, sum longd hennara er treytað av ATYP.

Skyldar greinar