t*-      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,None 01/Session directions Sftp support     -./01 2 345  None 6bBlock the current thread until data is available to read on the given file descriptor (GHC only).This will throw an 7 if the file descriptor was closed while this thread was blocked. To safely close a file descriptor that has been used with ., use .8qBlock the current thread until data can be written to the given file descriptor (GHC only). This will throw an 7 if the file descriptor was closed while this thread was blocked. To safely close a file descriptor that has been used with /, use .././None 1;= j 0&Sftp error code returning from libssh2I<Exception to throw when null pointer received from libssh2.J Error codes returned by libssh2.|Get last error information.}HThrow an exception if negative value passed, or return unchanged value.NThrow an exception if null pointer passed, or return it casted to right type. Get currently blocked directions9SftpGet last sftp related error.U0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~UJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxy0123456789:;<=>?@ABCDEFIGH|}~{z:;<0123456789:;<=>?@ABCDEFGHI=J/KLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyNone B4&>Flags for open_ex() Sftp supportKInitialize libssh2. Pass True to enable encryption or False to disable it.Deinitialize libssh2.Create Session objectFree Session object's memory+Disconnect session (but do not free memory)$Run SSH handshake on network socket.+Create KnownHosts object for given session.Free KnownHosts object's memoryRead known hosts from fileGet remote host public key$Check host data against known hosts."Perform public key authentication.)Perform username/password authentication.Open a channel for session.Execute commandExecute shell commandRead data from channel.Write data to channel.KWrite all data to channel from handle. Returns amount of transferred data.JRead all data from channel to handle. Returns amount of transferred data.&Close channel (but do not free memory)Free channel object's memoryGet channel exit status{Get channel exit signal. Returns: (possibly error code, exit signal name, possibly error message, possibly language code).Create SCP file send channel.ACreate SCP file receive channel. TODO: receive struct stat also.Open regular file handlerOpen directory file handler Read directory from file handlerClose file handle Rename a file on the sftp server Rename a file on the sftp server"Download file from the sftp serverUpload file to the sftp server)Get sftp attributes from the sftp handlerDelete file from SFTP server Goodbye messagePath to known_hosts file Host namePort number (usually 22)Host public key&Host flags (see libssh2 documentation)SessionUsernamePath to public keyPath to private key PassphraseSessionUsernamePasswordAmount of data to readOpened sftp session Old file name New file nameOpened sftp session Old file name New file name Rename flagsOpened sftp sessionPath to the file to be deletedg g >?@  NoneVs:Similar to Network.connectTo, but does not socketToHandle.MExecute some actions within SSH2 connection. Uses public key authentication.TExecute some actions within SSH2 connection. Uses username/password authentication.(Execute some actions within SSH2 session)Execute some actions withing SSH2 channel Read all data from the channel>Although this function returns a lazy bytestring, the data is not read lazily.!&Write a lazy bytestring to the channel$?Send a file to remote host via SCP. Returns size of sent data.%FReceive file from remote host via SCP. Returns size of received data.&Generalization of 'MExecute some actions within SFTP connection. Uses public key authentication.(TExecute some actions within SFTP connection. Uses username/password authentication.A(Execute some actions within SFTP session)lReads directory information Returns the list of files with attributes, directory . and .. are not excluded*?Send a file to remote host via SFTP Returns size of sent data.+?Send a file to remote host via SFTP Returns size of sent data.,IReceived a file from remote host via SFTP Returns size of received data.BIReceived a file from remote host via SFTP Returns size of received data.Path to known_hosts filePath to public key filePath to private key file PassphraseRemote user nameRemote host nameRemote port number (usually 22)Actions to perform on sessionPath to known_hosts fileRemote user nameRemote passwordRemote host nameRemote port number (usually 22)Actions to perform on sessionRemote host nameRemote port number (usually 22)(Actions to perform on handle and sessionRemote host nameRemote port number (usually 22)Path to known_hosts file$'File creation mode (0o777, for example)Path to local fileRemote file path%Remote file pathPath to local file&+Create a channel (and possibly other stuff)&Extract the channel from "other stuff"!Actions to execute on the channel$Channel exit status and return value'Path to known_hosts filePath to public key filePath to private key file PassphraseRemote user nameRemote host nameRemote port number (usually 22)"Actions to perform on sftp session(Path to known_hosts fileRemote user nameRemote passwordRemote host nameRemote port number (usually 22)"Actions to perform on sftp sessionARemote host name"Actions to perform on sftp session)Opened sftp sessionRemote directory to read*Opened sftp sessionPath to local fileRemote file path'File creation mode (0o777, for example)+Opened sftp sessionHandle to read fromRemote file path'File creation mode (0o777, for example),Opened sftp sessionPath to local fileRemote file pathBOpened sftp sessionPath to remote fileOpen handle to write to!  !"#$%&'()*+,!  & !$%"#'()*+,C      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./012 3456789:;<=>?Q@ABCDE&libssh2-0.2.0.6-I2X3RjKhK3JAQhHIkvit8M Network.SSH.Client.LibSSH2.Types%Network.SSH.Client.LibSSH2.WaitSocket!Network.SSH.Client.LibSSH2.Errors"Network.SSH.Client.LibSSH2.ForeignNetwork.SSH.Client.LibSSH2GHC.Conc closeFdWith SftpHandle sftpHandlePtrsftpHandleSessionSftp sftpSession DirectionINBOUNDOUTBOUNDChannelchannelSession KnownHostsSession ToPointer toPointer CStringCLenSSizeSizewithCStringLenIntConvpeekCStringPtrpeekMaybeCStringPtrsessionFromPointersessionGetSocketsessionSetSocketknownHostsFromPointerchannelFromPointerint2dirsftpFromPointersftpHandleFromPointer$fToPointerSession $fShowSession$fToPointerKnownHosts$fShowKnownHosts$fToPointerChannel $fShowChannel$fToPointerSftp $fShowSftp$fToPointerSftpHandle$fShowSftpHandle $fEqDirection$fShowDirection $fDataChannel $fEqChannel$fDataKnownHosts$fEqKnownHosts $fDataSession $fEqSessionthreadWaitReadthreadWaitWrite SftpErrorCodeFX_OKFX_EOFFX_NO_SUCH_FILEFX_PERMISSION_DENIED FX_FAILUREFX_BAD_MESSAGEFX_NO_CONNECTIONFX_CONNECTION_LOSTFX_OP_UNSUPPORTEDFX_INVALID_HANDLEFX_NO_SUCH_PATHFX_FILE_ALREADY_EXISTSFX_WRITE_PROTECT FX_NO_MEDIAFX_NO_SPACE_ON_FILESYSTEMFX_QUOTA_EXCEEDEDFX_UNKNOWN_PRINCIPALFX_LOCK_CONFLICTFX_DIR_NOT_EMPTYFX_NOT_A_DIRECTORYFX_INVALID_FILENAME FX_LINK_LOOP IntResult intResult NULL_POINTER ErrorCodeNONE SOCKET_NONE BANNER_RECV BANNER_SEND INVALID_MAC KEX_FALIUREALLOC SOCKET_SENDKEY_EXCHANGE_FAILURETIMEOUT HOSTKEY_INIT HOSTKEY_SIGNDECRYPTSOCKET_DISCONNECTPROTOPASSWORD_EXPIREDFILE METHOD_NONEAUTHENTICATION_FAILEDPUBLICKEY_UNVERIFIEDCHANNEL_OUTOFORDERCHANNEL_FAILURECHANNEL_REQUEST_DENIEDCHANNEL_UNKNOWNCHANNEL_WINDOW_EXCEEDEDCHANNEL_PACKET_EXCEEDEDCHANNEL_CLOSEDCHANNEL_EOF_SENT SCP_PROTOCOLZLIBSOCKET_TIMEOUT SFTP_PROTOCOLREQUEST_DENIEDMETHOD_NOT_SUPPORTEDINVALINVALID_POLL_TYPEPUBLICKEY_PROTOCOLEAGAINBUFFER_TOO_SMALLBAD_USECOMPRESSOUT_OF_BOUNDARYAGENT_PROTOCOL SOCKET_RECVENCRYPT BAD_SOCKETERROR_KNOWN_HOSTS error2int int2error getLastError handleInt handleBool handleNullPtrblockedDirectionsthreadWaitSessiongetLastSftpError sftperror2int int2sftperror$fExceptionErrorCode$fExceptionNULL_POINTER$fIntResultCLLong$fIntResultCLong$fIntResultCInt$fIntResult(,,,)$fIntResult(,,)$fIntResult(,)$fIntResultInt$fExceptionSftpErrorCode$fSshCtxSftpHandle $fSshCtxSftp$fSshCtxSession $fEqErrorCode$fShowErrorCode$fOrdErrorCode$fEnumErrorCode$fDataErrorCode$fEqNULL_POINTER$fShowNULL_POINTER$fDataNULL_POINTER$fEqSftpErrorCode$fShowSftpErrorCode$fOrdSftpErrorCode$fEnumSftpErrorCode$fDataSftpErrorCodeSftpAttributessaFlags saFileSizesaUidsaGid saPermissionssaAtimesaMtime RenameFlagRENAME_OVERWRITE RENAME_ATOMIC RENAME_NATIVESftpFileTransferFlagsFXF_READ FXF_WRITE FXF_APPEND FXF_CREAT FXF_TRUNCFXF_EXCL TraceFlagT_TRANST_KEXT_AUTHT_CONNT_SCPT_SFTPT_ERROR T_PUBLICKEYT_SOCKET KnownHostkhMagickhNodekhNamekhKey khTypeMaskKnownHostResultMATCHMISMATCHNOTFOUNDFAILURE KnownHostType TYPE_MASK TYPE_PLAIN TYPE_SHA1 TYPE_CUSTOM KEYENC_MASK KEYENC_RAW KEYENC_BASE64KEY_MASK KEY_SHIFTKEY_RSA1 KEY_SSHRSA KEY_SSHDSS initializeexit initSession freeSessiondisconnectSession setBlocking handshakeinitKnownHostsfreeKnownHostsknownHostsReadFile getHostKeycheckKnownHostpublicKeyAuthFileusernamePasswordAuthopenChannelSessionchannelProcesschannelExecute channelShell requestPTYEx requestPTY readChannel writeChannelchannelSendEOFchannelWaitEOF setTraceModewriteChannelFromHandlereadChannelToHandle channelIsEOF closeChannel freeChannelchannelExitStatuschannelExitSignalscpSendChannelscpReceiveChannelpollChannelReadsftpInit sftpShutdown sftpOpenFile sftpOpenDir sftpReadDirsftpCloseHandlesftpRenameFilesftpRenameFileExsftpReadFileToHandlersftpWriteFileFromHandler sftpFstatsftpDeleteFile$fEqKnownHostType$fShowKnownHostType$fEqKnownHostResult$fShowKnownHostResult$fOrdKnownHostResult$fEnumKnownHostResult $fEqKnownHost$fShowKnownHost $fEqTraceFlag$fShowTraceFlag$fEqSftpFileTransferFlags$fShowSftpFileTransferFlags$fEqOpenExFlags$fShowOpenExFlags$fEqRenameFlag$fShowRenameFlag$fShowSftpAttributes$fEqSftpAttributesSftpList socketConnectwithSSH2 withSSH2User withSession sessionInit sessionClose checkHost withChannelreadAllChannelwriteAllChannelrunShellCommands execCommands scpSendFilescpReceiveFile withChannelBywithSFTP withSFTPUser sftpListDir sftpSendFilesftpSendFromHandlesftpReceiveFilesftpPtr channelPtr sessionPtrsessionSocketRefthreadWaitRead_baseGHC.IO.ExceptionIOErrorthreadWaitWrite_getLastSftpError_SshCtx getSessionthrowCtxSpecificError OpenExFlagsOpenFileOpenDirwithSftpSessionsftpReceiveToHandle