code: func go_msg_callback(msgID C.uint16_t, data unsafe.Pointer, size C.size_t) {
  	// convert unsafe.Pointer to byte slice
  	sliceHeader := &reflect.SliceHeader{Data: uintptr(data), Len: int(size), Cap: int(size)}
  	byteSlice := *(*[]byte)(unsafe.Pointer(sliceHeader))
  
  	globalVppClient.msgCallback(uint16(msgID), byteSlice)
  }
docs: //export go_msg_callback