This requires the allocating function to provide a binary pointer that
will be free'd by the conversation handlers finalizers.
This is for a more advanced usage scenario where the binary conversion
may be handled manually.
This function is only needed when using go PAM for creating applications
so it's not something we expect to have exported to library modules.
To prevent this use an `asPamModule` tag to prevent compilation of
application-only features.