The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
TYPEMAP
BIGNUM*         O_OBJECT
BN_CTX*         O_OBJECT

INPUT
O_OBJECT
    if( ! SvROK( $arg ) ) { croak( \"argument is not a ${type} object\" ); }
    $var = (${type}) SvIV( SvRV( $arg ) );

OUTPUT
O_OBJECT
   sv_setsv( $arg, new_obj( p_proto, $var ) );