added password_callback