I have a dll with a call that requires a void ** pointer. It is expected that the called program will allocate some struct and hang it on the end of that pointer. I create a pointer using: Pointer.create("int**") since I can't use a void**. When I make the call, a Dr. Watson error occurs. I don't know the struct and it is not available to me. 1) Is it legal for the native program to allocate space that I can reference? No space boundary problems? 2) Do I need to allocate the space first? In C, this is legal, even common, to do this. But in Java....? Any help? TIA.