INNER CODE UNIT · Go
getBytesAndSize
krypton-byte/neonize · goneonize/main.go:413
func getBytesAndSize(data []byte) (*C.char, C.size_t) {
if len(data) == 0 {
return nil, 0
}
messageSourceCDATA := (*C.char)(unsafe.Pointer(&data[0]))
messageSourceCSize := C.size_t(len(data))
return messageSourceCDATA, messageSourceCSize
}
//export Upload
func Upload(id *C.char, mediabuff *C.uchar, mediaSize C.int, mediatype C.int) *C.struct_BytesReturn {
client := clients[C.GoString(id)]
data := getByteByAddr(mediabuff, mediaSize)
response, err_upload := client.Upload(context.Background(), data, utils.MediaType[int(mediatype)])
return_ := defproto.UploadReturnFunction{}
if err_upload != nil {
return_.Error = proto.String(err_upload.Error())
}