Geri çağırımlar (Callbacks)
libcurl içindeki birçok işlem geri çağırımlar kullanılarak kontrol edilir. Bir geri çağırım, libcurl'e sağlanan ve libcurl'ün daha sonra belirli bir işi yapmak için bir noktada çağırdığı bir işlev işaretçisidir.
Her geri çağırımın kendine özgü belgelenmiş bir amacı vardır ve doğru argümanları kabul etmesi ve libcurl'ün istediğiniz şekilde çalışması için belgelenmiş dönüş kodunu ve dönüş değerini döndürmesi için tam işlev prototipiyle yazmanızı gerektirir.
Her geri çağırım seçeneğinin ayrıca ilişkili kullanıcı işaretçisini ayarlayan bir yardımcı seçeneği vardır. Bu kullanıcı işaretçisi, libcurl'ün dokunmadığı veya umursamadığı, sadece bir argüman olarak geri çağırıma ilettiği bir işaretçidir. Bu, örneğin, yerel verilere işaretçileri geri çağırım işlevinize kadar iletmenize olanak tanır.
Bir libcurl işlev belgesinde açıkça belirtilmedikçe, bir libcurl geri çağırımı içinden libcurl işlevlerini çağırmak yasal değildir.
- Veri yazma (Write data)
- Veri okuma (Read data)
- İlerleme bilgisi (Progress information)
- Başlık verileri (Header data)
- Hata ayıklama (Debug)
- sockopt
- SSL bağlamı (SSL context)
- Arama ve ioctl (Seek and ioctl)
- Ağ veri dönüşümü
- Soket açma ve kapama (Opensocket and closesocket)
- SSH anahtarı
- RTSP serpiştirilmiş veriler
- FTP joker karakter eşleştirme
- Çözümleyici başlatma
- Sondaki başlıkları (Trailers) gönderme
- HSTS
- Ön koşul (Prereq)