CFWriteStreamCreateWithFTPURL(_:_:)
Creates an FTP write stream.
Declaration
func CFWriteStreamCreateWithFTPURL(_ alloc: CFAllocator?, _ ftpURL: CFURL) -> Unmanaged<CFWriteStream>Parameters
- alloc:
The allocator to use to allocate memory for the new object. Pass
NULLor kCFAllocatorDefault to use the current default allocator. - ftpURL:
A pointer to a CFURL structure for the URL to be uploaded created by calling any of the
CFURLCreatefunctions, such asCFURLCreateWithString.
Return Value
A new write stream, or NULL if the call failed. Ownership follows the The Create Rule.
Discussion
This function creates an FTP write stream for uploading data to an FTP URL. If the ftpURL parameter is created with the user name and password as part of the URL (such as ftp://username:password@ftp.example.com) then the user name and password will automatically be set in the CFWriteStream. Call CFWriteStreamSetProperty(_:_:_:) to set the steam’s properties, such as kCFStreamPropertyFTPUserName and kCFStreamPropertyFTPPassword to associate a user name and password with the stream that are used to log in when the stream is opened. See Constants for a description of all FTP stream properties.
After creating the write stream, you can call CFWriteStreamGetStatus(_:) at any time to check the status of the stream.
To initiate a connection with the FTP server, call CFWriteStreamOpen(_:). If the URL specifies a directory, the open is immediately followed by the event kCFStreamEventEndEncountered (and the stream passes to the state kCFStreamStatusAtEnd). Once the stream reaches this state, the directory has been created. Intermediary directories are not created.
To write to the FTP stream, call CFWriteStreamWrite(_:_:_:).
To close a connection with the FTP server, call CFWriteStreamClose(_:).
See Also
Streams
CFReadStreamCreateForHTTPRequest(_:_:)CFReadStreamCreateForStreamedHTTPRequest(_:_:_:)kCFStreamPropertyHTTPAttemptPersistentConnectionkCFStreamPropertyHTTPFinalRequestkCFStreamPropertyHTTPFinalURLkCFStreamPropertyHTTPProxykCFStreamPropertyHTTPProxyHostkCFStreamPropertyHTTPProxyPortkCFStreamPropertyHTTPRequestBytesWrittenCountkCFStreamPropertyHTTPResponseHeaderkCFStreamPropertyHTTPSProxyHostkCFStreamPropertyHTTPSProxyPortkCFStreamPropertyHTTPShouldAutoredirectCFReadStreamCreateWithFTPURL(_:_:)kCFStreamPropertyFTPAttemptPersistentConnection