Hi Miki I'm using syscall package and no C import, but maybe it is possible to use this function as well?
Am Donnerstag, 14. Dezember 2017 09:18:26 UTC+1 schrieb Miki Tebeka: > > Do you mean > > func C.GoBytes(unsafe.Pointer, C.int) []byte > > ? > > On Thursday, December 14, 2017 at 9:05:32 AM UTC+2, snmed wrote: >> >> Hi all >> >> I'm trying to map a C structure to an equivalent go struct, but I bumped >> into a problem with a pointer to byte that is actually an array of bytes. >> >> Here is the C struct: >> >> typedef struct _CERT_CONTEXT { >> DWORD dwCertEncodingType; >> BYTE *pbCertEncoded; >> DWORD cbCertEncoded; >> PCERT_INFO pCertInfo; >> HCERTSTORE hCertStore; >> } CERT_CONTEXT, *PCERT_CONTEXT; >> >> >> and this is my go struct: >> >> type CERT_CONTEXT struct { >> dwCertEncodingType uint32 >> pbCertEncoded uintptr >> cbCertEncoded uint32 >> pCertInfo uintptr >> hCertStore uintptr >> } >> >> for my case I need only the first 3 fields and I do not have any problem >> to get 1 and 3, but I can't remember how to translate the second field to a >> slice of bytes. >> This is how I map the struct from an uintptr and print it to the console: >> >> certctx = (*CERT_CONTEXT) (unsafe.Pointer(pccert_context)) >> fmt.Printf("%v\n", certctx) >> >> >&{1 807520 674 833008 789360} >> >> Any advise is warmly welcome. >> >> Cheers, >> Sandro >> > -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.