libgadu  1.12.1
Funkcje | Zmienne
Dokumentacja pliku libgadu.c

Główny moduł biblioteki. Więcej...

Funkcje

static void gg_compat_message_sent (struct gg_session *sess, int seq, size_t recipients_count, uin_t *recipients)
static void gg_compat_message_cleanup (struct gg_session *sess)
const char * gg_libgadu_version (void)
 Zwraca wersję biblioteki.
void * gg_new0 (size_t size)
int gg_required_proto (struct gg_session *gs, int protocol_version)
int gg_get_dummy_fd (struct gg_session *sess)
unsigned int gg_login_hash (const unsigned char *password, unsigned int seed)
int gg_read (struct gg_session *sess, char *buf, int length)
static int gg_write_common (struct gg_session *sess, const char *buf, int length)
int gg_write (struct gg_session *sess, const char *buf, int length)
void gg_close (struct gg_session *sess)
void * gg_recv_packet (struct gg_session *sess)
int gg_send_packet (struct gg_session *sess, int type,...)
static int gg_session_callback (struct gg_session *sess)
struct gg_sessiongg_login (const struct gg_login_params *p)
 Łączy się z serwerem Gadu-Gadu.
int gg_ping (struct gg_session *sess)
 Wysyła do serwera pakiet utrzymania połączenia.
void gg_logoff (struct gg_session *sess)
 Kończy połączenie z serwerem.
void gg_free_session (struct gg_session *sess)
 Zwalnia zasoby używane przez połączenie z serwerem.
int gg_change_status (struct gg_session *sess, int status)
 Zmienia status użytkownika.
int gg_change_status_descr (struct gg_session *sess, int status, const char *descr)
 Zmienia status użytkownika na status opisowy.
int gg_change_status_descr_time (struct gg_session *sess, int status, const char *descr, int ts)
 Zmienia status użytkownika na status opisowy z podanym czasem powrotu.
int gg_change_status_flags (struct gg_session *sess, int flags)
 Funkcja zmieniająca flagi statusu.
int gg_send_message (struct gg_session *sess, int msgclass, uin_t recipient, const unsigned char *message)
 Wysyła wiadomość do użytkownika.
int gg_send_message_richtext (struct gg_session *sess, int msgclass, uin_t recipient, const unsigned char *message, const unsigned char *format, int formatlen)
 Wysyła wiadomość formatowaną.
int gg_send_message_html (struct gg_session *sess, int msgclass, uin_t recipient, const unsigned char *html_message)
 Wysyła formatowaną wiadomość HTML.
int gg_send_message_confer (struct gg_session *sess, int msgclass, int recipients_count, uin_t *recipients, const unsigned char *message)
 Wysyła wiadomość w ramach konferencji.
int gg_send_message_confer_richtext (struct gg_session *sess, int msgclass, int recipients_count, uin_t *recipients, const unsigned char *message, const unsigned char *format, int formatlen)
 Wysyła wiadomość formatowaną w ramach konferencji.
int gg_send_message_confer_html (struct gg_session *sess, int msgclass, int recipients_count, uin_t *recipients, const unsigned char *html_message)
 Wysyła formatowaną wiadomość HTML w ramach konferencji.
int gg_send_message_ctcp (struct gg_session *sess, int msgclass, uin_t recipient, const unsigned char *message, int message_len)
 Wysyła wiadomość binarną przeznaczoną dla klienta.
int gg_image_request (struct gg_session *sess, uin_t recipient, int size, uint32_t crc32)
 Wysyła żądanie obrazka o podanych parametrach.
int gg_image_reply (struct gg_session *sess, uin_t recipient, const char *filename, const char *image, int size)
 Wysyła żądany obrazek.
void gg_image_sendout (struct gg_session *sess)
static int gg_notify105_ex (struct gg_session *sess, uin_t *userlist, char *types, int count)
int gg_notify_ex (struct gg_session *sess, uin_t *userlist, char *types, int count)
 Wysyła do serwera listę kontaktów.
int gg_notify (struct gg_session *sess, uin_t *userlist, int count)
 Wysyła do serwera listę kontaktów.
int gg_add_notify_ex (struct gg_session *sess, uin_t uin, char type)
 Dodaje kontakt.
int gg_add_notify (struct gg_session *sess, uin_t uin)
 Dodaje kontakt.
int gg_remove_notify_ex (struct gg_session *sess, uin_t uin, char type)
 Usuwa kontakt.
int gg_remove_notify (struct gg_session *sess, uin_t uin)
 Usuwa kontakt.
int gg_userlist_request (struct gg_session *sess, char type, const char *request)
 Wysyła do serwera zapytanie dotyczące listy kontaktów.
int gg_userlist100_request (struct gg_session *sess, char type, unsigned int version, char format_type, const char *request)
 Wysyła do serwera zapytanie dotyczące listy kontaktów (10.0).
int gg_typing_notification (struct gg_session *sess, uin_t recipient, int length)
 Informuje rozmówcę o pisaniu wiadomości.
int gg_multilogon_disconnect (struct gg_session *gs, gg_multilogon_id_t conn_id)
 Rozłącza inną sesję multilogowania.
int gg_chat_create (struct gg_session *gs)
 Tworzy nową konferencję (11.0).
int gg_chat_invite (struct gg_session *gs, uint64_t id, uin_t *participants, unsigned int participants_count)
 Zaprasza nowych użytkowników do konferencji (11.0).
int gg_chat_leave (struct gg_session *gs, uint64_t id)
 Opuszcza konferencję (11.0).
int gg_chat_send_message (struct gg_session *gs, uint64_t id, const char *message, int is_html)
 Wysyła wiadomość w ramach konferencji (11.0).
int gg_libgadu_check_feature (gg_libgadu_feature_t feature)
 Sprawdza czy biblioteka obsługuje daną funkcję.
static void gg_socket_manager_error (struct gg_session *sess, enum gg_failure_t failure)
int gg_compat_feature_is_enabled (struct gg_session *sess, gg_compat_feature_t feature)
static gg_msg_list_tgg_compat_find_sent_message (struct gg_session *sess, int seq, int remove)
void gg_compat_message_ack (struct gg_session *sess, int seq)
int gg_socket_manager_connected (void *handle, void *priv, int fd)
 Odbiera nowo utworzone gniazdo TCP/TLS.

Zmienne

int gg_dcc_port = 0
 Port gniazda nasłuchującego dla połączeń bezpośrednich.
unsigned long gg_dcc_ip = 0
 Adres IP gniazda nasłuchującego dla połączeń bezpośrednich.
unsigned long gg_local_ip = 0
 Adres lokalnego interfejsu IP, z którego wywoływane są wszystkie połączenia.
int gg_proxy_enabled = 0
 Flaga włączenia połączeń przez serwer pośredniczący.
char * gg_proxy_host = NULL
 Adres serwera pośredniczącego.
int gg_proxy_port = 0
 Port serwera pośredniczącego.
int gg_proxy_http_only = 0
 Flaga używania serwera pośredniczącego jedynie dla usług HTTP.
char * gg_proxy_username = NULL
 Nazwa użytkownika do autoryzacji serwera pośredniczącego.
char * gg_proxy_password = NULL
 Hasło użytkownika do autoryzacji serwera pośredniczącego.

Opis szczegółowy

Główny moduł biblioteki.


Dokumentacja funkcji

static void gg_compat_message_sent ( struct gg_session sess,
int  seq,
size_t  recipients_count,
uin_t recipients 
) [static]
static void gg_compat_message_cleanup ( struct gg_session sess) [static]
void* gg_new0 ( size_t  size)
int gg_required_proto ( struct gg_session gs,
int  protocol_version 
)
int gg_get_dummy_fd ( struct gg_session sess)
unsigned int gg_login_hash ( const unsigned char *  password,
unsigned int  seed 
)

Liczy skrót z hasła i ziarna.

Parametry:
passwordHasło
seedZiarno podane przez serwer
Zwraca:
Wartość skrótu
int gg_read ( struct gg_session sess,
char *  buf,
int  length 
)

Odbiera od serwera dane binarne.

Funkcja odbiera dane od serwera zajmując się SSL/TLS w razie konieczności. Obsługuje EINTR, więc użytkownik nie musi się przejmować przerwanymi wywołaniami systemowymi.

Parametry:
sessStruktura sesji
bufBufor na danymi
lengthDługość bufora
Zwraca:
To samo co funkcja systemowa read
static int gg_write_common ( struct gg_session sess,
const char *  buf,
int  length 
) [static]

Wysyła do serwera dane binarne.

Funkcja wysyła dane do serwera zajmując się SSL/TLS w razie konieczności. Obsługuje EINTR, więc użytkownik nie musi się przejmować przerwanymi wywołaniami systemowymi.

Nota:
Funkcja nie zajmuje się buforowaniem wysyłanych danych (patrz gg_write()).
Parametry:
sessStruktura sesji
bufBufor z danymi
lengthDługość bufora
Zwraca:
To samo co funkcja systemowa write
int gg_write ( struct gg_session sess,
const char *  buf,
int  length 
)

Wysyła do serwera dane binarne.

Funkcja wysyła dane do serwera zajmując się TLS w razie konieczności.

Parametry:
sessStruktura sesji
bufBufor z danymi
lengthDługość bufora
Zwraca:
To samo co funkcja systemowa write
void gg_close ( struct gg_session sess)
void* gg_recv_packet ( struct gg_session sess)

Odbiera pakiet od serwera.

Funkcja odczytuje nagłówek pakietu, a następnie jego zawartość i zwraca w zaalokowanym buforze.

Przy połączeniach asynchronicznych, funkcja może nie być w stanie skompletować całego pakietu -- w takim przypadku zwróci NULL, a kodem błędu będzie EAGAIN.

Parametry:
sessStruktura sesji
Zwraca:
Wskaźnik do zaalokowanego bufora
int gg_send_packet ( struct gg_session sess,
int  type,
  ... 
)

Wysyła pakiet do serwera.

Funkcja konstruuje pakiet do wysłania z dowolnej liczby fragmentów. Jeśli rozmiar pakietu jest za duży, by móc go wysłać za jednym razem, pozostała część zostanie zakolejkowana i wysłana, gdy będzie to możliwe.

Parametry:
sessStruktura sesji
typeRodzaj pakietu
...Lista kolejnych części pakietu (wskaźnik na bufor i długość typu int) zakończona NULL
Zwraca:
0 jeśli się powiodło, -1 w przypadku błędu
static int gg_session_callback ( struct gg_session sess) [static]

Funkcja zwrotna sesji.

Pole callback struktury gg_session zawiera wskaźnik do tej funkcji. Wywołuje ona gg_watch_fd i zachowuje wynik w polu event.

Nota:
Korzystanie z tej funkcjonalności nie jest już zalecane.
Parametry:
sessStruktura sesji
Zwraca:
0 jeśli się powiodło, -1 w przypadku błędu
void gg_image_sendout ( struct gg_session sess)
static int gg_notify105_ex ( struct gg_session sess,
uin_t userlist,
char *  types,
int  count 
) [static]
static void gg_socket_manager_error ( struct gg_session sess,
enum gg_failure_t  failure 
) [static]
int gg_compat_feature_is_enabled ( struct gg_session sess,
gg_compat_feature_t  feature 
)
static gg_msg_list_t* gg_compat_find_sent_message ( struct gg_session sess,
int  seq,
int  remove 
) [static]
void gg_compat_message_ack ( struct gg_session sess,
int  seq 
)
 All Struktury Danych Pliki Funkcje Zmienne Definicje typów Wyliczenia Wartości wyliczeń Definicje