anchor.diff:  								t)))))))
   
   (defmethod authentication :around ((ssh ssh-connection) (auth auth-data))
  -	(if (auth-passed ssh)
  +	(if (eq (auth-passed ssh) :ERROR-NONE)
   			t
   			(if (ssh-verify-session ssh)
   					(setf (auth-passed ssh)
  
positive.code: 		(user-auth-password (session  ssh)
  												(login    auth)
  												(password auth))))
  
  (defclass auth-agent (auth-data) ())
  
  
negative.code: 													fs-password fs-password-size
  													callback)))
  
  (defcfun ("libssh2_userauth_publickey_fromfile_ex" --user-auth-publickey) +ERROR-CODE+
  	(session +session+) 
  	(username :string) (username-len :unsigned-int)
  	(public-key :string) 
  	(private-key :string) (password :string))
  
  (defun user-auth-publickey (session username public-key private-key password)
  	(with-foreign-strings ((fs-username    username)
  												 (fs-public-key  public-key)
  												 (fs-private-key private-key)
  												 (fs-password    password))
  		(--user-auth-publickey session fs-username (length username)
  													 fs-public-key fs-private-key fs-password)))
  
  (defctype +channel+ :pointer)
  (defcfun ("libssh2_channel_open_ex" --channel-open-ex) +channel+
  	(session +session+) (channel-type :string) (channel-type-length :unsigned-int)
  