This is going to become a live-stream video "class" done by Daniel in November 2023. Also recorded for Youtube of course.
The exact date/time is pending. This is the tentative agenda. What are you missing from here?
- The project
- Getting libcurl
- API and ABI
- Architecture
- Transfers
- Basics
- Using
- Share API
- TLS
- Proxies
- HTTP
- HTTP header API
- URL API
- WebSocket
- Future
- installing
- building
- debugging
- free support
- paid support
- compatibility
- versions
- the API is for C
- header files
- compiling libcurl programs
- C89
- backends
- everything is non-blocking
- content ignorant
- URLs
- callbacks
- different versions/installs
- global init
- easy handles
- options
- easy perform
- multi handles
- multi perform
- multi_socket
- verbose debug function tracing
- curl_version / curl_version_info
- persistent connections
- multiplexing
- Downloads
- Storing downloads
- Compression
- Multiple downloads
- Maximum file size
- Resuming and ranges
- Uploads
- Multiple uploads
- Transfer controls
- Stop slow transfers
- Rate limiting
- Connections
- Name resolve tricks
- Connection timeout
- Network interface
- Local port number
- Keep alive
- Timeouts
- .netrc
- return codes
- SCP and SFTP
- Reading email
- Sending email
- --libcurl
- post transfer meta-data
- caches
- some words on threads
- error handling with libcurl
- sharing data between easy handles
- ciphers
- enable TLS
- verifying server certificates custom checks
- client certificates
- on TLS backends
- SSLKEYLOGFILE
- Proxy type
- HTTP proxy
- SOCKS proxy (tor)
- Authentication
- HTTPS proxy
- Proxy environment variables
- Proxy headers
- Authentication
- Ranges
- HTTP versions
- Conditionals
- HTTP POST data with callback
- Multipart formpost
- Redirects
- Modify the HTTP request
- HTTP PUT
- Cookies
- Alternative Services
- HSTS
- HTTP/2
- HTTP/3
- get specific header field after transfer
- iterate over many headers
- Parse a URL
- extract components
- update components
- URL encoding/decoding
- IDN encoding/decoding
- redirects
- just a quickie, I did a separate websocket video recently https://youtu.be/NLIhd0wYO24
Feedback from Mastodon/email to get into the presentation: