"Paul Thomas" <[EMAIL PROTECTED]> writes: > So when I'm using the library, my class has to have a static member > function so that it can be passed into you library as a function > pointer. Unfortunately a non-static member function can not be passed > into the library.
You've got "abstract" void* pointer attached to every libssh2 to pass any context to your handler (use libssh2_session_abstract to access it): static void MyCplusPlusWrapper::keyboardinteractive_handler( const char* name, int name_len, ..., void* abstract) { MyCplusPlusWrapper* this_ = static_cast<MyCplusPlusWrapper*>(abstract); this_-> .... } This is pretty common pattern in C world, I'm pretty sure you've seen it numerous times under the "ctx" or "context" name. > 2) Is there any possibility that a future version of libssh2 will give > the ability to just do something as simple as: > > libssh2_userauth_keyboard_interactive( session, username, password) > > Then if someone like me is using C++, then we aren't stuck only using > static functions with keyboard interactive auth. It's impossible. Have a look at the protocol specification. -- JID: [EMAIL PROTECTED] ------------------------------------------------------------------------- SF.Net email is sponsored by: Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace _______________________________________________ libssh2-devel mailing list libssh2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libssh2-devel