github.com/Mrs4s/MiraiGo@v0.0.0-20240226124653-54bdd873e3fe/internal/tlv/t128.go (about)

     1  package tlv
     2  
     3  import "github.com/Mrs4s/MiraiGo/binary"
     4  
     5  func T128(isGuidFromFileNull, isGuidAvailable, isGuidChanged bool, guidFlag uint32, buildModel, guid, buildBrand []byte) []byte {
     6  	return binary.NewWriterF(func(w *binary.Writer) {
     7  		w.WriteUInt16(0x128)
     8  		pos := w.FillUInt16()
     9  		w.WriteUInt16(0)
    10  		w.WriteBool(isGuidFromFileNull)
    11  		w.WriteBool(isGuidAvailable)
    12  		w.WriteBool(isGuidChanged)
    13  		w.WriteUInt32(guidFlag)
    14  		w.WriteTlvLimitedSize(buildModel, 32)
    15  		w.WriteTlvLimitedSize(guid, 16)
    16  		w.WriteTlvLimitedSize(buildBrand, 16)
    17  		w.WriteUInt16At(pos, uint16(w.Len()-4))
    18  	})
    19  }