return if allocating the DH fails
convert one buffer in the blowfish sasl over to an raii container
convert second buffer to be raii, one more to go!
cleanup, reordering and removal of undefined behavior when the pass parameter is duplicated