Hey! You definitely need to open the file yourself first. libcurl specify path won’t magically handle file operations for you.
For `CURLOPT_READDATA`, you gotta pass a FILE* pointer, not just a string path. Something like:
```c
FILE *f = fopen("/home/user/file.txt", "rb");
curl_easy_setopt(curl, CURLOPT_READDATA, f);
```
Same logic applies for `CURLOPT_WRITEDATA`.
Windows vs Linux paths? Yeah, libcurl specify path works with forward slashes on both, but if you’re hardcoding, might as well use `\\` on Windows to avoid headaches.
Check out the official example here: https://curl.se/libcurl/c/httpput.html
For `CURLOPT_READDATA`, you gotta pass a FILE* pointer, not just a string path. Something like:
```c
FILE *f = fopen("/home/user/file.txt", "rb");
curl_easy_setopt(curl, CURLOPT_READDATA, f);
```
Same logic applies for `CURLOPT_WRITEDATA`.
Windows vs Linux paths? Yeah, libcurl specify path works with forward slashes on both, but if you’re hardcoding, might as well use `\\` on Windows to avoid headaches.
Check out the official example here: https://curl.se/libcurl/c/httpput.html
