the brand_handle_t struct should be truly opaque to callers.
currently it's defined as:
typedef struct brand_handle brand_handle_t
and all callers access brand_handle_t pointers.
it should instead use the conventions established by
PSARC/2004/413DDI Cleanup
and be defined as:
typedef struct __brand_handle *brand_handle_t
then all callers will simply access brand_handle_t's.