Open spacewander opened 2 years ago
@spacewander Nice catch~
for possible misuse of unsafe.Pointer
yes, it's a misuse. Patch welcome ~
for possibly passing Go type with embedded pointer to C
it's an expected warning. It's unsafe usage for cgo, which is also desired.
(We also disabled cgocheck for unsafe passing Go pointer from go to c and c to go).
We can pass the addr of a flat buffer instead of
[]string
this could be a proper way to mute this vet warning, but I'm not sure if it's worthing, it may complicate the code.
we need to reflect the flat buffer into []string
before using it as strings. thoughts?
this could be a proper way to mute this vet warning, but I'm not sure if it's worthing, it may complicate the code.
What about passing the Data ptr like: https://github.com/mosn/envoy-go-extension/blob/c20a07ecb9add915f8f8f17f499bdf95949ac549/pkg/http/capi.go#L46-L55
Actually we can delay the possibly passing Go type with embedded pointer to C
suppression as the headers argument is not used at all. 😃
I have checked all the errors, and it seems they come from unused file or argument, so we can simply remove them.
We can pass the addr of a flat buffer instead of
[]string
to avoidpossibly passing Go type with embedded pointer to C
It seems we can simply write
sHdr.Data = uintptr(ptr)
in this case? Do I miss something?