Actually while setting the callback, we can not pass the 
user-defined/application data. For example: void 
SSL_CTX_sess_set_new_cb(SSL_CTX *ctx,                             int 
(*new_session_cb)(SSL *, SSL_SESSION *));
When the callback arrives, I have SSL* and SSL_SESSION*. Earlier I was getting 
it from the 'msg_callback_arg' of SSL pointer but in the openssl1.1.1, SSL 
structure is no longer accessible.

    On Sunday, 9 June, 2019, 8:27:46 pm IST, Jeremy Harris <j...@wizmail.org> 
wrote:  
 
 On 09/06/2019 11:31, shalu dhamija wrote:
> Hi All,In openssl 1.0.2, I was using  SSL_CTX_set_msg_callback_arg() API to 
> set the application specific argument. And in the callback, I was retrieving 
> that argument from SSL pointer received in the callback e.g. 
> "ssl->msg_callback_arg"But in openssl1.1.1, the SSL structure members are no 
> more accessible. And I did not find any API to get the msg_callback_arg back. 
> Can someone please comment on this if there is any way to get the 
> msg_callback_arg back in the callbacks from ssl pointer.

When the callback is called, the arg you set is given to the callback
function, as a function argument.  It's not intended as a general-
purpose data stash.

-- 
Cheers,
  Jeremy
  

Reply via email to