lpackでバイナリファイルを作る
id:eggman:20080205:1202251800の続き。
luaにもpack/unpackのライブラリがあったので使ってみる。
使ってみたライブラリは、Luaの作者の一人でもあるlhfさんのlpackです。
#!/bin/env lua require"pack" bpack=string.pack src_port=3088 dst_port=22 length=1200 crc=0xABCD f=io.open("udph.bin", "wb") f:write(bpack("HHHH", src_port, dst_port, length, crc)) f:close()
$ lua make_udp_header.lua ;hexdump udph.bin 0000000 0c10 0016 04b0 abcd 0000008
lpackをつかった方が、シンプルになって良いです。