# curlftpsink

This is a network sink that uses libcurl as a client to upload data to an FTP server.

## Example launch line

Upload a JPEG file to /home/test/images * directory)

     gst-launch-1.0 filesrc location=image.jpg ! jpegparse ! curlftpsink  \
         file-name=image.jpg  \
         location=ftp://192.168.0.1/images/

## Hierarchy

    GObject
        ╰──GInitiallyUnowned
            ╰──GstObject
                ╰──GstElement
                    ╰──GstBaseSink
                        ╰──GstCurlBaseSink
                            ╰──GstCurlTlsSink
                                ╰──curlftpsink

## Factory details

Authors: – Patricia Muscalu <patricia@axis.com></patricia@axis.com>

Classification: – `Sink/Network`

Rank – none

Plugin – curl

Package – GStreamer Bad Plug-ins

## Pad Templates

### `sink`

    ANY

Presence – always

Direction – sink

Object type – GstPad

## Properties

### create-dirs

    “create-dirs” gboolean

Attempt to create missing directory included in the path

Flags : Read / Write

Default value : false

### create-tmp-file

    “create-tmp-file” gboolean

Use a temporary file name when uploading a a file. When the transfer is complete, this temporary file is renamed to the final file name. This is useful for ensuring that remote systems do not read a partially uploaded file

Flags : Read / Write

Default value : false

### epsv-mode

    “epsv-mode” gboolean

Enable the use of the EPSV command when doing passive FTP transfers

Flags : Read / Write

Default value : false

### ftp-port

    “ftp-port” gchararray

The PORT instruction tells the remote server to connect to the IP address

Flags : Read / Write

Default value : NULL

### temp-file-name

    “temp-file-name” gchararray

Filename pattern to use when generating a temporary filename for uploads

Flags : Read / Write

Default value : NULL

The results of the search are