mirror of
				https://github.com/libssh2/libssh2.git
				synced 2025-10-27 13:52:22 +03:00 
			
		
		
		
	
		
			
				
	
	
		
			80 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
			
		
		
	
	
			80 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
| .TH libssh2_sftp_symlink_ex 3 "1 Jun 2007" "libssh2 0.15" "libssh2 manual"
 | |
| .SH NAME
 | |
| libssh2_sftp_symlink_ex - read or set a symbolic link
 | |
| .SH SYNOPSIS
 | |
| .nf
 | |
| #include <libssh2.h>
 | |
| #include <libssh2_sftp.h>
 | |
| 
 | |
| int 
 | |
| libssh2_sftp_symlink_ex(LIBSSH2_SFTP *sftp, const char *path,
 | |
|                         unsigned int path_len, char *target,
 | |
|                         unsigned int target_len, int link_type);
 | |
| .SH DESCRIPTION
 | |
| Create a symlink or read out symlink information from the remote side.
 | |
| 
 | |
| \fIsftp\fP - SFTP instance as returned by 
 | |
| .BR libssh2_sftp_init(3)
 | |
| 
 | |
| \fIpath\fP - Remote filesystem object to create a symlink from or resolve.
 | |
| 
 | |
| \fIpath_len\fP - Length of the name of the remote filesystem object to 
 | |
| create a symlink from or resolve.
 | |
| 
 | |
| \fItarget\fP - a pointer to a buffer. The buffer has different uses depending
 | |
| what the \fIlink_type\fP argument is set to.
 | |
| .br
 | |
| \fBLIBSSH2_SFTP_SYMLINK\fP: Remote filesystem object to link to.
 | |
| .br
 | |
| \fBLIBSSH2_SFTP_READLINK\fP: Pre-allocated buffer to resolve symlink target
 | |
| into.
 | |
| .br
 | |
| \fBLIBSSH2_SFTP_REALPATH\fP: Pre-allocated buffer to resolve realpath target
 | |
| into.
 | |
| 
 | |
| \fItarget_len\fP - Length of the name of the remote filesystem target object.
 | |
| 
 | |
| \fIlink_type\fP - One of the three previously mentioned constants which 
 | |
| determines the resulting behavior of this function.
 | |
| 
 | |
| These are convenience macros:
 | |
| 
 | |
| .BR libssh2_sftp_symlink(3)
 | |
| : Create a symbolic link between two filesystem objects.
 | |
| .br
 | |
| .BR libssh2_sftp_readlink(3)
 | |
| : Resolve a symbolic link filesystem object to its next target.
 | |
| .br
 | |
| .BR libssh2_sftp_realpath(3)
 | |
| : Resolve a complex, relative, or symlinked filepath to its effective target.
 | |
| .SH RETURN VALUE
 | |
| When using LIBSSH2_SFTP_SYMLINK, this function returns 0 on success or negative
 | |
| on failure.
 | |
| 
 | |
| When using LIBSSH2_SFTP_READLINK or LIBSSH2_SFTP_REALPATH, it returns the
 | |
| number of bytes it copied to the target buffer (not including the terminating
 | |
| zero) or negative on failure.
 | |
| 
 | |
| It returns LIBSSH2_ERROR_EAGAIN when it would otherwise block. While
 | |
| LIBSSH2_ERROR_EAGAIN is a negative number, it isn't really a failure per se.
 | |
| 
 | |
| From 1.2.8, LIBSSH2_ERROR_BUFFER_TOO_SMALL is returned if the given 'target'
 | |
| buffer is too small to fit the requested object name.
 | |
| .SH BUG
 | |
| Passing in a too small buffer when receiving data only results in libssh2
 | |
| 1.2.7 or earlier to not copy the entire data amount, and it is not possible
 | |
| for the application to tell when it happens!
 | |
| .SH ERRORS
 | |
| \fILIBSSH2_ERROR_ALLOC\fP -  An internal memory allocation call failed.
 | |
| 
 | |
| \fILIBSSH2_ERROR_SOCKET_SEND\fP - Unable to send data on socket.
 | |
| 
 | |
| \fILIBSSH2_ERROR_SOCKET_TIMEOUT\fP - 
 | |
| 
 | |
| \fILIBSSH2_ERROR_SFTP_PROTOCOL\fP - An invalid SFTP protocol response was 
 | |
| received on the socket, or an SFTP operation caused an errorcode to 
 | |
| be returned by the server.
 | |
| 
 | |
| .SH SEE ALSO
 | |
| .BR libssh2_sftp_init(3)
 |