pidgin 2.14.14dev
Loading...
Searching...
No Matches
_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.
 
PurpleXferType type
 The type of transfer.
 
PurpleAccountaccount
 The account.
 
char * who
 The person on the other end of the transfer.
 
char * message
 A message sent with the request

 
char * filename
 The name sent over the network.
 
char * local_filename
 The name on the local hard drive.
 
size_t size
 The size of the file.
 
FILE * dest_fp
 The destination file pointer.
 
char * remote_ip
 The remote IP address.
 
int local_port
 The local port.
 
int remote_port
 The remote port.
 
int fd
 The socket file descriptor.
 
int watcher
 Watcher.
 
size_t bytes_sent
 The number of bytes sent.
 
size_t bytes_remaining
 The number of bytes remaining.
 
time_t start_time
 When the transfer of data began.
 
time_t end_time
 When the transfer of data ended.
 
size_t current_buffer_size
 This gradually increases for fast network connections.
 
PurpleXferStatusType status
 File Transfer's status.
 
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.
 
PurpleXferUiOpsui_ops
 UI-specific operations.
 
void * ui_data
 UI-specific data.
 
void * data
 prpl-specific data.
 

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]

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: