pidgin 2.14.14dev
_PurpleXfer Struct Reference

A core representation of a file transfer. More...

#include <ft.h>

Collaboration diagram for _PurpleXfer:
Collaboration graph

Data Fields

guint ref
 The reference count. More...
 
PurpleXferType type
 The type of transfer. More...
 
PurpleAccountaccount
 The account. More...
 
char * who
 The person on the other end of the transfer. More...
 
char * message
 A message sent with the request
More...
 
char * filename
 The name sent over the network. More...
 
char * local_filename
 The name on the local hard drive. More...
 
size_t size
 The size of the file. More...
 
FILE * dest_fp
 The destination file pointer. More...
 
char * remote_ip
 The remote IP address. More...
 
int local_port
 The local port. More...
 
int remote_port
 The remote port. More...
 
int fd
 The socket file descriptor. More...
 
int watcher
 Watcher. More...
 
size_t bytes_sent
 The number of bytes sent. More...
 
size_t bytes_remaining
 The number of bytes remaining. More...
 
time_t start_time
 When the transfer of data began. More...
 
time_t end_time
 When the transfer of data ended. More...
 
size_t current_buffer_size
 This gradually increases for fast network connections. More...
 
PurpleXferStatusType status
 File Transfer's status. More...
 
struct {
   void(*   init )(PurpleXfer *xfer)
 
   void(*   request_denied )(PurpleXfer *xfer)
 
   void(*   start )(PurpleXfer *xfer)
 
   void(*   end )(PurpleXfer *xfer)
 
   void(*   cancel_send )(PurpleXfer *xfer)
 
   void(*   cancel_recv )(PurpleXfer *xfer)
 
   gssize(*   read )(guchar **buffer, PurpleXfer
      *xfer)
 
   gssize(*   write )(const guchar *buffer, size_t
      size, PurpleXfer *xfer)
 
   void(*   ack )(PurpleXfer *xfer, const
      guchar *buffer, size_t size)
 
ops
 I/O operations, which should be set by the prpl using purple_xfer_set_init_fnc() and friends. More...
 
PurpleXferUiOpsui_ops
 UI-specific operations. More...
 
void * ui_data
 UI-specific data. More...
 
void * data
 prpl-specific data. More...
 

Detailed Description

A core representation of a file transfer.

Definition at line 134 of file ft.h.

Field Documentation

◆ account

PurpleAccount* _PurpleXfer::account

The account.


Definition at line 139 of file ft.h.

◆ ack

void(* _PurpleXfer::ack) (PurpleXfer *xfer, const guchar *buffer, size_t size)

Definition at line 182 of file ft.h.

◆ bytes_remaining

size_t _PurpleXfer::bytes_remaining

The number of bytes remaining.


Definition at line 159 of file ft.h.

◆ bytes_sent

size_t _PurpleXfer::bytes_sent

The number of bytes sent.


Definition at line 158 of file ft.h.

◆ cancel_recv

void(* _PurpleXfer::cancel_recv) (PurpleXfer *xfer)

Definition at line 179 of file ft.h.

◆ cancel_send

void(* _PurpleXfer::cancel_send) (PurpleXfer *xfer)

Definition at line 178 of file ft.h.

◆ current_buffer_size

size_t _PurpleXfer::current_buffer_size

This gradually increases for fast network connections.

Definition at line 163 of file ft.h.

◆ data

void* _PurpleXfer::data

prpl-specific data.


Definition at line 188 of file ft.h.

◆ dest_fp

FILE* _PurpleXfer::dest_fp

The destination file pointer.


Definition at line 149 of file ft.h.

◆ end

void(* _PurpleXfer::end) (PurpleXfer *xfer)

Definition at line 177 of file ft.h.

◆ end_time

time_t _PurpleXfer::end_time

When the transfer of data ended.


Definition at line 161 of file ft.h.

◆ fd

int _PurpleXfer::fd

The socket file descriptor.


Definition at line 155 of file ft.h.

◆ filename

char* _PurpleXfer::filename

The name sent over the network.


Definition at line 145 of file ft.h.

◆ init

void(* _PurpleXfer::init) (PurpleXfer *xfer)

Definition at line 174 of file ft.h.

◆ local_filename

char* _PurpleXfer::local_filename

The name on the local hard drive.


Definition at line 146 of file ft.h.

◆ local_port

int _PurpleXfer::local_port

The local port.


Definition at line 152 of file ft.h.

◆ message

char* _PurpleXfer::message

A message sent with the request

Definition at line 144 of file ft.h.

◆ 

struct { ... } _PurpleXfer::ops

I/O operations, which should be set by the prpl using purple_xfer_set_init_fnc() and friends.

Setting #init is mandatory; all others are optional.

◆ read

gssize(* _PurpleXfer::read) (guchar **buffer, PurpleXfer *xfer)

Definition at line 180 of file ft.h.

◆ ref

guint _PurpleXfer::ref

The reference count.


Definition at line 136 of file ft.h.

◆ remote_ip

char* _PurpleXfer::remote_ip

The remote IP address.


Definition at line 151 of file ft.h.

◆ remote_port

int _PurpleXfer::remote_port

The remote port.


Definition at line 153 of file ft.h.

◆ request_denied

void(* _PurpleXfer::request_denied) (PurpleXfer *xfer)

Definition at line 175 of file ft.h.

◆ size

size_t _PurpleXfer::size

The size of the file.


Definition at line 147 of file ft.h.

◆ start

void(* _PurpleXfer::start) (PurpleXfer *xfer)

Definition at line 176 of file ft.h.

◆ start_time

time_t _PurpleXfer::start_time

When the transfer of data began.


Definition at line 160 of file ft.h.

◆ status

PurpleXferStatusType _PurpleXfer::status

File Transfer's status.


Definition at line 166 of file ft.h.

◆ type

PurpleXferType _PurpleXfer::type

The type of transfer.


Definition at line 137 of file ft.h.

◆ ui_data

void* _PurpleXfer::ui_data

UI-specific data.


Definition at line 186 of file ft.h.

◆ ui_ops

PurpleXferUiOps* _PurpleXfer::ui_ops

UI-specific operations.

Definition at line 185 of file ft.h.

◆ watcher

int _PurpleXfer::watcher

Watcher.


Definition at line 156 of file ft.h.

◆ who

char* _PurpleXfer::who

The person on the other end of the transfer.


Definition at line 141 of file ft.h.

◆ write

gssize(* _PurpleXfer::write) (const guchar *buffer, size_t size, PurpleXfer *xfer)

Definition at line 181 of file ft.h.


The documentation for this struct was generated from the following file: